/* ==========================================================================
   BLOCK 10 — PURE MONOCHROME ARCHITECTURAL EDITORIAL DESIGN SYSTEM
   INSPIRED BY TYPESAFE AI EDITORIAL ARCHITECTURE & MINIMAL NAVIGATION
   COLOR SYSTEM: STRICT BLACK (#000000) & WHITE (#FFFFFF) ONLY.
   ZERO ACCENT COLORS. ZERO GRAYS. ZERO GRADIENTS.
   ========================================================================== */

/* 1. CSS VARIABLES & SYSTEM TOKENS */
:root {
    /* Pure Monochrome Base */
    --black: #000000;
    --white: #FFFFFF;

    /* Opacity Tokens for Black (used over White surfaces) */
    --black-a03: rgba(0, 0, 0, 0.03);
    --black-a06: rgba(0, 0, 0, 0.06);
    --black-a10: rgba(0, 0, 0, 0.10);
    --black-a15: rgba(0, 0, 0, 0.15);
    --black-a20: rgba(0, 0, 0, 0.20);
    --black-a30: rgba(0, 0, 0, 0.30);
    --black-a40: rgba(0, 0, 0, 0.40);
    --black-a60: rgba(0, 0, 0, 0.60);
    --black-a75: rgba(0, 0, 0, 0.75);
    --black-a85: rgba(0, 0, 0, 0.85);

    /* Opacity Tokens for White (used over Black surfaces) */
    --white-a05: rgba(255, 255, 255, 0.05);
    --white-a10: rgba(255, 255, 255, 0.10);
    --white-a15: rgba(255, 255, 255, 0.15);
    --white-a20: rgba(255, 255, 255, 0.20);
    --white-a30: rgba(255, 255, 255, 0.30);
    --white-a50: rgba(255, 255, 255, 0.50);
    --white-a70: rgba(255, 255, 255, 0.70);
    --white-a85: rgba(255, 255, 255, 0.85);

    /* Typography Stack (Pretendard + Inter + IBM Plex Mono) */
    --font-sans: 'Inter', 'Pretendard', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-mono: 'IBM Plex Mono', 'Space Mono', SFMono-Regular, Menlo, Monaco, Consolas, monospace;

    /* Legacy Mappings to Pure Monochrome */
    --dawn-blue: var(--white);
    --sky-blue: var(--white);
    --light-blue: var(--white);
    --deep-navy: var(--black);
    --text-black: var(--black);
    --text-primary: var(--black);
    --brand-brick: var(--black);
    --brand-brick-hover: var(--black);
    --brand-dark: var(--black);
    --brand-slate: var(--black-a60);
    --toss-blue: var(--black);
    --toss-blue-hover: var(--black);
    --toss-dark: var(--black);
    --toss-grey-text: var(--black-a60);
    --surface-warm: var(--white);
    --surface-sand: var(--white);
    --border-warm: var(--black-a15);
    --hairline-navy: var(--black-a15);
    --hairline-white: var(--white-a15);
    --hairline-soft: var(--black-a10);
}

/* 2. UNIVERSAL RESET & EDITORIAL BASE */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html {
    scroll-behavior: smooth;
    font-size: 16px;
    background-color: var(--black);
    color: var(--white);
    font-family: var(--font-sans);
}

body {
    background-color: var(--black);
    color: var(--white);
    line-height: 1.5;
    overflow-x: hidden;
    position: relative;
}

img, video {
    max-width: 100%;
    height: auto;
    display: block;
    filter: grayscale(100%) contrast(120%);
}

a {
    color: inherit;
    text-decoration: none;
    transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

button {
    font-family: inherit;
    cursor: pointer;
    border: none;
    background: none;
    color: inherit;
    transition: all 0.15s ease;
}

::selection {
    background: var(--white);
    color: var(--black);
}

/* 3. FLOATING BLOCK NAVIGATION (TYPESAFE EDITORIAL SYSTEM)
   - Zero continuous navbar background / zero border-bottom
   - Transparent viewport-wide floating container with pointer-events: none
   - Independent pill/rectangle blocks with distinct low-saturation backgrounds
   - 0~2px radius, no heavy shadows, consistent height & typography
   - Always visible, NEVER hides on scroll (Desktop & Mobile)
   ========================================================================== */
.b10-floating-nav-bar,
.b10-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: auto !important;
    z-index: 1000 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    pointer-events: none !important;
    padding: 20px 40px !important;
    box-sizing: border-box !important;
    transition: none !important;
}

.b10-floating-nav-bar.scrolled,
.b10-header.scrolled {
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.b10-floating-nav-container,
.b10-header-inner {
    max-width: 1440px !important;
    width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    pointer-events: none !important;
}

/* Individual Pill / Rectangle Blocks */
.b10-nav-box {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    padding: 0 18px;
    font-family: var(--font-sans);
    font-size: 0.84rem;
    font-weight: 600;
    letter-spacing: -0.015em;
    text-decoration: none;
    border-radius: 2px;
    border: 1px solid rgba(0, 0, 0, 0.09);
    pointer-events: auto;
    box-sizing: border-box;
    white-space: nowrap;
    box-shadow: none;
    cursor: pointer;
    line-height: 1;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.1s ease;
}

.b10-nav-box:hover {
    transform: translateY(-1px);
}

.b10-nav-box:active {
    transform: translateY(0);
}

/* 1. Logo Block */
.b10-box-logo {
    background: #FFFFFF;
    color: #111111;
    font-weight: 800;
    letter-spacing: -0.03em;
    gap: 8px;
    border-color: rgba(0, 0, 0, 0.14);
}
.b10-box-logo:hover {
    background: #F4F4F2;
    color: #000000;
}
.b10-box-glyph {
    width: 8px;
    height: 8px;
    background: #111111;
    display: inline-block;
}

/* 2. Center Nav Cluster */
.b10-nav-cluster {
    display: flex;
    align-items: center;
    gap: 8px;
    pointer-events: none;
}

/* Individual Button Tones (Distinct low-saturation curated colors) */
/* Solution: warm ivory / paper soft gray */
.b10-box-solution {
    background: #ECE8E1;
    color: #1F1D1A;
    border-color: rgba(0, 0, 0, 0.08);
}
.b10-box-solution:hover {
    background: #DFD9CF;
    color: #000000;
}
.b10-box-solution.active {
    border-color: rgba(0, 0, 0, 0.35);
    font-weight: 700;
}

/* Industries: muted blue */
.b10-box-industries {
    background: #DBE7F1;
    color: #12283A;
    border-color: rgba(18, 40, 58, 0.12);
}
.b10-box-industries:hover {
    background: #CBDCEB;
    color: #0B1C2A;
}
.b10-box-industries.active {
    border-color: rgba(18, 40, 58, 0.35);
    font-weight: 700;
}

/* Pricing: paper beige */
.b10-box-pricing {
    background: #F1ECE0;
    color: #2D251C;
    border-color: rgba(45, 37, 28, 0.1);
}
.b10-box-pricing:hover {
    background: #E5DFC8;
    color: #1A150F;
}
.b10-box-pricing.active {
    border-color: rgba(45, 37, 28, 0.32);
    font-weight: 700;
}

/* Resources: neutral soft gray */
.b10-box-resources {
    background: #ECECEC;
    color: #222222;
    border-color: rgba(0, 0, 0, 0.08);
}
.b10-box-resources:hover {
    background: #DDDDDD;
    color: #000000;
}
.b10-box-resources.active {
    border-color: rgba(0, 0, 0, 0.3);
    font-weight: 700;
}

/* 3. Right Actions Cluster */
.b10-action-cluster {
    display: flex;
    align-items: center;
    gap: 8px;
    pointer-events: none;
}

/* Login: Crisp white block */
.b10-box-login {
    background: #FFFFFF;
    color: #111111;
    border-color: rgba(0, 0, 0, 0.12);
}
.b10-box-login:hover {
    background: #F0F0EE;
    color: #000000;
}

/* Consult: Black block + white text */
.b10-box-consult {
    background: #111111;
    color: #FFFFFF;
    border-color: #111111;
    font-weight: 700;
}
.b10-box-consult:hover {
    background: #2C2C2C;
    border-color: #2C2C2C;
    color: #FFFFFF;
}

/* Mobile Toggle: Independent block */
.b10-box-mobile-menu {
    display: none;
    background: #FFFFFF;
    color: #111111;
    border-color: rgba(0, 0, 0, 0.14);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 0 16px;
    height: 38px;
}
.b10-box-mobile-menu:hover {
    background: #F2F2F0;
}

/* Mobile Responsiveness for Header */
@media (max-width: 900px) {
    .b10-floating-nav-bar,
    .b10-header {
        padding: 14px 18px !important;
    }
    .b10-nav-cluster {
        display: none !important;
    }
    .b10-action-cluster .b10-box-login,
    .b10-action-cluster .b10-box-consult {
        display: none !important;
    }
    .b10-box-mobile-menu {
        display: inline-flex !important;
    }
}

/* Mobile Menu & Backdrop */
.b10-mobile-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(8px);
    z-index: 1050;
    display: none;
}

.b10-mobile-backdrop.active {
    display: block;
}

.b10-mobile-menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 320px;
    height: 100vh;
    background: var(--black);
    border-left: 1px solid var(--white-a20);
    z-index: 1060;
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: right 0.3s ease;
}

.b10-mobile-menu.active {
    right: 0;
}

.mobile-menu-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--white-a20);
}

.mobile-nav-links {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.mobile-link {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--white);
}

.mobile-menu-footer {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 24px;
    border-top: 1px solid var(--white-a20);
}

/* ==========================================================================
   PAGE COLOR ARCHITECTURE ("화이트 기반 + 제한된 컬러 블록")
   - Warm White / Ivory, Soft Gray, Paper Beige, Muted Blue, Dusty Blue,
     Muted Green, Muted Red, Deep Burgundy, Charcoal Black
   - Every page features its own editorial palette and composition
   ========================================================================== */

/* Page Canvas Theme Classes */
body.page-theme-home {
    background-color: #FAF9F5;
    color: #121314;
}

body.page-theme-solution {
    background-color: #F2F4F7;
    color: #111111;
}

body.page-theme-industries {
    background-color: #F3EFE7;
    color: #141618;
}

body.page-theme-pricing {
    background-color: #FAF8F4;
    color: #121314;
}

body.page-theme-resources {
    background-color: #F0F1F2;
    color: #141517;
}

body.page-theme-contact {
    background-color: #1A232C;
    color: #F8F9FA;
}

body.page-theme-login {
    background-color: #111214;
    color: #FFFFFF;
}

/* Editorial Color Block Badges & Chips */
.b10-block-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 4px 10px;
    border-radius: 2px;
    line-height: 1.2;
    box-sizing: border-box;
}

.chip-muted-blue {
    background: #DCE7F0;
    color: #12283A;
    border: 1px solid rgba(18, 40, 58, 0.12);
}

.chip-muted-green {
    background: #DCE8DC;
    color: #1C3322;
    border: 1px solid rgba(28, 51, 34, 0.14);
}

.chip-muted-red {
    background: #EAE0DD;
    color: #4A1D1A;
    border: 1px solid rgba(74, 29, 26, 0.14);
}

.chip-deep-burgundy {
    background: #4A1D24;
    color: #FFFFFF;
    border: 1px solid #4A1D24;
}

.chip-paper-beige {
    background: #EFE9DD;
    color: #2D251C;
    border: 1px solid rgba(45, 37, 28, 0.14);
}

.chip-soft-gray {
    background: #E8EAEB;
    color: #1F2428;
    border: 1px solid rgba(31, 36, 40, 0.12);
}

.chip-dusty-blue {
    background: #CAD8E6;
    color: #162636;
    border: 1px solid rgba(22, 38, 54, 0.15);
}

.chip-charcoal {
    background: #191B1F;
    color: #FFFFFF;
    border: 1px solid #191B1F;
}

/* 4. SECTION 00: HERO (MASSIVE TYPE CANVAS + PURE MONOCHROME SKY + DEEP WHITESPACE) */
.hero-canvas {
    position: relative;
    background-color: var(--black);
    color: var(--white);
    min-height: 100vh;
    padding-top: 140px;
    padding-bottom: 80px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    border-bottom: 1px solid var(--white-a20);
}

.hero-bg-layer {
    position: absolute;
    inset: 0;
    background-image: url('hero-bg.jpg');
    background-size: cover;
    background-position: center bottom;
    filter: grayscale(100%) contrast(130%) brightness(0.7);
    opacity: 0.65;
    pointer-events: none;
    z-index: 1;
}

.hero-ambient-grid {
    display: none !important;
}

.hero-crosshair {
    position: absolute;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a50);
    letter-spacing: 0.08em;
    pointer-events: none;
    z-index: 3;
}

.hero-crosshair.tl { top: 80px; left: 40px; }
.hero-crosshair.tr { top: 80px; right: 40px; }
.hero-crosshair.bl { bottom: 30px; left: 40px; }
.hero-crosshair.br { bottom: 30px; right: 40px; }

.hero-content {
    position: relative;
    z-index: 5;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
    width: 100%;
}

.hero-meta-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--white-a15);
    padding-bottom: 16px;
    margin-bottom: 48px;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a70);
    letter-spacing: 0.08em;
}

.kicker-tag {
    color: var(--white);
    font-weight: 700;
}

.hero-headline {
    font-size: clamp(4.2rem, 11vw, 13rem);
    font-weight: 900;
    line-height: 0.92;
    letter-spacing: -0.045em;
    color: var(--white);
    margin-bottom: 32px;
}

.hero-brand {
    display: block;
    font-size: 0.75em;
    letter-spacing: -0.035em;
    margin-top: 14px;
    color: var(--white);
}

.hero-subhead {
    font-size: clamp(1.1rem, 2vw, 1.4rem);
    font-weight: 500;
    color: var(--white-a85);
    line-height: 1.6;
    max-width: 680px;
    margin-bottom: 60px;
}

.hero-footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid var(--white-a15);
    padding-top: 32px;
}

.hero-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.btn-huge-primary {
    font-size: 1.05rem;
    font-weight: 800;
    padding: 16px 36px;
    background: var(--white);
    color: var(--black);
    border: 2px solid var(--white);
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.btn-huge-primary:hover {
    background: var(--black);
    color: var(--white);
    border-color: var(--white);
}

.btn-huge-outline {
    font-size: 1.05rem;
    font-weight: 700;
    padding: 16px 32px;
    border: 2px solid var(--white-a70);
    color: var(--white);
    background: transparent;
}

.btn-huge-outline:hover {
    background: var(--white);
    color: var(--black);
    border-color: var(--white);
}

.hero-footnote {
    font-family: var(--font-mono);
    font-size: 0.76rem;
    color: var(--white-a50);
    text-align: right;
    line-height: 1.5;
}

/* 5. SECTION 01: THE QUESTION & PROBLEM (STARK WHITE EDITORIAL WHITESPACE) */
.sec-problem {
    background-color: var(--white);
    color: var(--black);
    padding: 160px 0;
    position: relative;
    border-bottom: 2px solid var(--black);
}

.sec-problem-inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
}

.sec-header-meta {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--black-a60);
    margin-bottom: 48px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.sec-header-meta::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background: var(--black);
}

.editorial-manifesto {
    margin-bottom: 120px;
}

.problem-lead-question {
    font-size: clamp(2.8rem, 6.5vw, 6.8rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
    color: var(--black);
    margin-bottom: 64px;
}

.problem-staggered-lines {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 64px;
}

.stagger-line {
    font-size: clamp(2rem, 4.5vw, 4.5rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.035em;
    color: var(--black);
}

.stagger-line.indent-1 {
    padding-left: clamp(24px, 8vw, 120px);
}

.stagger-line.indent-2 {
    padding-left: clamp(48px, 16vw, 240px);
}

.problem-statement-box {
    border-left: 4px solid var(--black);
    padding-left: 28px;
    max-width: 880px;
}

.problem-statement-text {
    font-size: clamp(1.6rem, 3.2vw, 3rem);
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -0.03em;
    color: var(--black);
}

.problem-pivot-bar {
    border-top: 2px solid var(--black);
    padding-top: 60px;
}

.pivot-meta {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--black-a60);
    margin-bottom: 24px;
}

.pivot-headline {
    font-size: clamp(2.4rem, 5.2vw, 5.5rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
    color: var(--black);
}

/* 6. COMMON EDITORIAL PRODUCT CANVASES (SECTIONS 02, 03, 04, 05) */
.sec-editorial-product {
    padding: 160px 0;
    position: relative;
}

.sec-editorial-product.sec-dark {
    background-color: var(--black);
    color: var(--white);
    border-bottom: 2px solid var(--white-a20);
}

.sec-editorial-product.sec-light {
    background-color: var(--white);
    color: var(--black);
    border-bottom: 2px solid var(--black);
}

.editorial-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
}

.product-editorial-header {
    margin-bottom: 64px;
}

.product-editorial-tag {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 12px;
    color: var(--white-a70);
}

.sec-light .product-editorial-tag,
.text-black {
    color: var(--black) !important;
}

.text-black-sub {
    color: var(--black-a75) !important;
}

.product-editorial-badge {
    display: inline-block;
    font-size: 0.85rem;
    font-weight: 800;
    padding: 4px 10px;
    background: var(--white);
    color: var(--black);
    margin-bottom: 20px;
}

.sec-light .product-editorial-badge {
    background: var(--black);
    color: var(--white);
}

.product-editorial-headline {
    font-size: clamp(2.4rem, 5.2vw, 5.5rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
    margin-bottom: 24px;
}

.product-editorial-desc {
    font-size: clamp(1rem, 1.8vw, 1.25rem);
    font-weight: 500;
    color: var(--white-a85);
    line-height: 1.6;
    max-width: 780px;
}

/* Showcase Windows & Frames */
.showcase-window {
    border: 2px solid var(--white-a30);
    background: var(--black);
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.9);
}

.showcase-window.light-window {
    border: 2px solid var(--black);
    background: var(--white);
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.08);
}

.window-chrome {
    background: var(--black);
    color: var(--white);
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--white-a20);
}

.window-chrome.chrome-light {
    background: var(--black-a03);
    border-bottom: 1px solid var(--black-a15);
}

.window-dots {
    display: flex;
    align-items: center;
    gap: 8px;
}

.w-dot {
    width: 10px;
    height: 10px;
    background: var(--white);
    display: inline-block;
}

.w-dot.outline {
    background: transparent;
    border: 1px solid var(--white);
}

.w-dot.dot-dark {
    background: var(--black);
}

.w-dot.dot-dark.outline {
    background: transparent;
    border: 1px solid var(--black);
}

.window-title-text {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.window-meta-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a70);
}

/* 7. CALENDAR SPECIFIC STYLING */
.calendar-stage-inner {
    padding: 32px;
}

.calendar-meta-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--white-a15);
}

.cal-current-date {
    font-size: 1.15rem;
    font-weight: 800;
}

.cal-legend-mono {
    display: flex;
    gap: 20px;
    font-family: var(--font-mono);
    font-size: 0.8rem;
    color: var(--white-a70);
}

.calendar-schedule-grid {
    display: grid;
    grid-template-columns: 80px repeat(3, 1fr);
    border: 1px solid var(--white-a20);
}

.cal-time-col-hdr, .cal-staff-hdr {
    background: var(--white-a05);
    padding: 14px;
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 700;
    border-right: 1px solid var(--white-a15);
    border-bottom: 1px solid var(--white-a20);
    text-align: center;
}

.cal-staff-hdr:last-child {
    border-right: none;
}

.cal-time-label {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    padding: 16px 8px;
    text-align: center;
    border-right: 1px solid var(--white-a15);
    border-bottom: 1px solid var(--white-a15);
    background: var(--white-a03);
    color: var(--white-a70);
}

.cal-slot {
    padding: 10px;
    border-right: 1px solid var(--white-a15);
    border-bottom: 1px solid var(--white-a15);
    min-height: 90px;
}

.cal-slot:last-child {
    border-right: none;
}

.cal-card {
    background: var(--white);
    color: var(--black);
    padding: 10px 14px;
    border: 1px solid var(--white);
    transition: transform 0.15s ease;
}

.cal-card.active-treatment {
    background: transparent;
    color: var(--white);
    border: 1px solid var(--white);
}

.card-client-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.85rem;
    font-weight: 800;
    margin-bottom: 4px;
}

.c-price {
    font-family: var(--font-mono);
}

.c-service {
    font-size: 0.75rem;
    opacity: 0.85;
}

/* 8. EHR SPECIFIC STYLING */
.ehr-stage-layout {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 40px;
    padding: 40px;
}

.ehr-dossier-card {
    border: 2px solid var(--black);
    padding: 32px 24px;
    text-align: center;
}

.ehr-avatar-frame {
    width: 80px;
    height: 80px;
    margin: 0 auto 16px;
    border: 2px solid var(--black);
    display: flex;
    align-items: center;
    justify-content: center;
}

.ehr-avatar-monogram {
    font-size: 1.8rem;
    font-weight: 900;
}

.ehr-client-name {
    font-size: 1.4rem;
    font-weight: 900;
    margin-bottom: 4px;
}

.ehr-client-badge {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    background: var(--black);
    color: var(--white);
    padding: 3px 10px;
    margin-bottom: 24px;
}

.ehr-metric-matrix {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    border-top: 1px solid var(--black-a15);
    border-bottom: 1px solid var(--black-a15);
    padding: 20px 0;
    margin-bottom: 24px;
}

.m-val {
    font-family: var(--font-mono);
    font-size: 1.15rem;
    font-weight: 900;
    margin-bottom: 4px;
}

.m-lbl {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--black-a60);
}

.ehr-memo-card {
    text-align: left;
    font-size: 0.82rem;
    line-height: 1.55;
    background: var(--black-a03);
    padding: 16px;
    border: 1px solid var(--black-a15);
}

.memo-title {
    font-weight: 800;
    margin-bottom: 6px;
}

.ehr-treatment-column {
    display: flex;
    flex-direction: column;
}

.ehr-timeline-header {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--black-a75);
    border-bottom: 2px solid var(--black);
    padding-bottom: 14px;
    margin-bottom: 24px;
}

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

.ledger-item {
    border: 1px solid var(--black);
    padding: 24px;
}

.ledger-meta-bar {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--black-a60);
    margin-bottom: 8px;
}

.l-title {
    font-size: 1.2rem;
    font-weight: 800;
    margin-bottom: 10px;
}

.l-recipe {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    line-height: 1.5;
    color: var(--black-a85);
    background: var(--black-a03);
    padding: 12px;
    border-left: 3px solid var(--black);
}

/* 9. SALES SPECIFIC STYLING */
.pos-stage-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    padding: 40px;
}

.pos-ledger-side {
    border: 1px solid var(--white-a20);
    padding: 36px;
}

.pos-metric-head {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a70);
    margin-bottom: 12px;
}

.pos-head-tag {
    color: var(--white);
    font-weight: 700;
}

.pos-giant-number {
    font-family: var(--font-mono);
    font-size: clamp(2.4rem, 4.5vw, 3.8rem);
    font-weight: 900;
    line-height: 1;
    margin-bottom: 32px;
}

.pos-breakdown-table {
    display: flex;
    flex-direction: column;
    gap: 14px;
    border-top: 1px solid var(--white-a15);
    padding-top: 24px;
}

.b-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.9rem;
    color: var(--white-a85);
}

.val-mono {
    font-family: var(--font-mono);
    font-weight: 700;
}

.b-highlight {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--white);
    border-top: 1px solid var(--white-a20);
    padding-top: 14px;
    margin-top: 6px;
}

.pos-device-side {
    border: 1px solid var(--white-a20);
    padding: 36px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.device-icon-glyph {
    margin-bottom: 20px;
}

.device-label-title {
    font-size: 1.6rem;
    font-weight: 900;
    margin-bottom: 12px;
}

.device-label-desc {
    font-size: 0.92rem;
    color: var(--white-a75);
    line-height: 1.6;
    margin-bottom: 32px;
}

.btn-tap-interact {
    padding: 20px;
    background: var(--white);
    color: var(--black);
    font-size: 1.05rem;
    font-weight: 800;
    border: 2px solid var(--white);
    text-align: center;
    cursor: pointer;
}

.btn-tap-interact:hover {
    background: var(--black);
    color: var(--white);
    border-color: var(--white);
}

.tap-interact-feedback {
    margin-top: 16px;
    font-family: var(--font-mono);
    font-size: 0.85rem;
    font-weight: 700;
    padding: 12px;
    border: 1px solid var(--white);
    display: none;
}

/* 10. REPORT SPECIFIC STYLING */
.report-poster-frame {
    border: 3px solid var(--black);
    background: var(--white);
    padding: 48px;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.08);
}

.poster-head-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid var(--black);
    padding-bottom: 24px;
    margin-bottom: 40px;
}

.poster-badge-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--black-a60);
    display: block;
    margin-bottom: 4px;
}

.poster-main-title {
    font-size: 1.8rem;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.poster-period-tag {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 700;
}

.poster-stat-columns {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-bottom: 2px solid var(--black);
    padding-bottom: 40px;
    margin-bottom: 32px;
}

.poster-col {
    border-right: 1px solid var(--black-a15);
    padding: 0 24px;
}

.poster-col:first-child {
    padding-left: 0;
}

.poster-col:last-child {
    border-right: none;
    padding-right: 0;
}

.p-col-label {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--black-a60);
    margin-bottom: 10px;
}

.p-col-value {
    font-family: var(--font-mono);
    font-size: clamp(1.8rem, 3.2vw, 2.8rem);
    font-weight: 900;
    line-height: 1.1;
    margin-bottom: 8px;
}

.p-col-delta {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black);
}

.poster-summary-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 0.82rem;
    color: var(--black-a85);
}

.strip-tag {
    font-weight: 800;
    background: var(--black);
    color: var(--white);
    padding: 4px 10px;
}

/* 11. SECTION 06: AUTOMATION */
.sec-automation {
    background-color: var(--black);
    color: var(--white);
    padding: 160px 0;
    border-bottom: 2px solid var(--white-a20);
}

.auto-editorial-lead {
    margin-bottom: 64px;
}

.auto-headline {
    font-size: clamp(2.4rem, 5.2vw, 5.5rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
    margin-bottom: 24px;
}

.auto-subheadline {
    font-size: clamp(1.2rem, 2.2vw, 1.8rem);
    font-weight: 700;
    color: var(--white-a85);
    line-height: 1.5;
}

.automation-stream-console {
    border: 2px solid var(--white-a30);
    padding: 40px;
    background: var(--black);
}

.stream-header-bar {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--white-a70);
    border-bottom: 1px solid var(--white-a20);
    padding-bottom: 16px;
    margin-bottom: 28px;
}

.stream-feed-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.stream-event-row {
    display: flex;
    gap: 20px;
    font-family: var(--font-mono);
    font-size: 0.88rem;
    line-height: 1.5;
}

.ev-time {
    color: var(--white-a50);
}

.ev-tag {
    font-weight: 700;
    color: var(--white);
    margin-right: 8px;
}

/* 12. SECTION 07: INDUSTRY */
.sec-industry {
    background-color: var(--white);
    color: var(--black);
    padding: 160px 0;
    border-bottom: 2px solid var(--black);
}

.industry-intro {
    margin-bottom: 64px;
}

.industry-headline {
    font-size: clamp(2.4rem, 5.2vw, 5.5rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
    margin-bottom: 16px;
}

.industry-subwords {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.industry-monolith-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.industry-monolith {
    border: 2px solid var(--black);
    padding: 40px 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 300px;
    transition: all 0.2s ease;
}

.industry-monolith:hover {
    background: var(--black);
    color: var(--white);
    transform: translateY(-4px);
}

.m-idx {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--black-a60);
}

.industry-monolith:hover .m-idx {
    color: var(--white-a70);
}

.m-title {
    font-size: 1.6rem;
    font-weight: 900;
    margin: 16px 0 8px 0;
    letter-spacing: -0.03em;
}

.m-desc {
    font-size: 0.88rem;
    line-height: 1.5;
    color: var(--black-a75);
}

.industry-monolith:hover .m-desc {
    color: var(--white-a85);
}

.m-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 8px;
    border: 1px solid var(--black);
    align-self: flex-start;
    margin-top: 20px;
}

.industry-monolith:hover .m-tag {
    border-color: var(--white);
    color: var(--white);
}

/* 13. SECTION 08: FINAL MANIFESTO */
.sec-final {
    background-color: var(--black);
    color: var(--white);
    padding: 180px 0 100px 0;
}

.final-manifesto-title {
    font-size: clamp(3.6rem, 9.5vw, 10.5rem);
    font-weight: 900;
    line-height: 0.95;
    letter-spacing: -0.045em;
    margin-bottom: 64px;
}

.brand-strike {
    display: block;
    margin-top: 16px;
}

.final-cta-cluster {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 80px;
}

.btn-final-primary {
    font-size: 1.15rem;
    font-weight: 800;
    padding: 20px 48px;
    background: var(--white);
    color: var(--black);
    border: 2px solid var(--white);
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.btn-final-primary:hover {
    background: var(--black);
    color: var(--white);
    border-color: var(--white);
}

.btn-final-outline {
    font-size: 1.15rem;
    font-weight: 700;
    padding: 20px 40px;
    border: 2px solid var(--white-a70);
    color: var(--white);
    background: transparent;
}

.btn-final-outline:hover {
    background: var(--white);
    color: var(--black);
    border-color: var(--white);
}

.final-guarantee-line {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a50);
}

/* 14. FOOTER (1:1 WITH REFERENCE IMAGE + 3D ROTATING WIREFRAME) */
.anduril-footer {
    width: 100%;
    background: #000000;
    color: #FFFFFF;
    padding: 100px 48px 60px;
    box-sizing: border-box;
    font-family: var(--font-sans);
    border-top: 1px solid var(--white-a15);
}

.anduril-footer-inner {
    max-width: 1360px;
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}

.anduril-footer-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 90px;
    flex-wrap: wrap;
    gap: 48px;
}

.anduril-footer-left-wireframe {
    position: relative;
    width: 520px;
    max-width: 100%;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin: 0;
    background: transparent;
}

.anduril-footer-wireframe-canvas {
    width: 100%;
    height: 100%;
    display: block;
    cursor: grab;
}

.anduril-footer-wireframe-canvas:active {
    cursor: grabbing;
}

.anduril-footer-wireframe-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    display: flex;
    align-items: center;
    gap: 16px;
    color: #FFFFFF;
    z-index: 10;
    white-space: nowrap;
}

.anduril-3d-glyph {
    width: 54px;
    height: 54px;
    flex-shrink: 0;
}

.anduril-3d-title {
    font-family: var(--font-sans);
    font-size: clamp(2.2rem, 6vw, 3.4rem);
    font-weight: 900;
    color: #FFFFFF;
    letter-spacing: -0.04em;
    line-height: 1;
    margin: 0;
}

.anduril-footer-columns {
    display: flex;
    gap: 72px;
    flex-wrap: wrap;
}

.anduril-footer-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 140px;
}

.anduril-footer-col-title {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--white-a60);
    text-transform: uppercase;
    margin-bottom: 8px;
}

.anduril-footer-col a {
    font-size: 0.95rem;
    color: #FFFFFF;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: -0.02em;
    transition: opacity 0.15s ease;
}

.anduril-footer-col a:hover {
    opacity: 0.6;
}

.anduril-footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 32px;
    padding-top: 48px;
    border-top: 1px solid var(--white-a10);
}

.anduril-footer-legal {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.anduril-footer-copy {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: var(--white);
    text-transform: uppercase;
}

.anduril-footer-legal-links {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.anduril-footer-legal-links a {
    font-size: 0.75rem;
    color: var(--white-a50);
    text-decoration: none;
    line-height: 1.4;
    transition: color 0.15s ease;
}

.anduril-footer-legal-links a:hover {
    color: #FFFFFF;
}

.anduril-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: right;
}

.anduril-footer-contact-title {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--white-a50);
    text-transform: uppercase;
}

.anduril-footer-contact-link {
    font-size: 0.95rem;
    color: #FFFFFF;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: -0.01em;
    transition: opacity 0.15s ease;
}

.anduril-footer-contact-link:hover {
    opacity: 0.7;
}

/* 15. MODALS & FORMS */
.b10-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(12px);
    z-index: 2000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.b10-modal-overlay.active {
    display: flex;
}

.b10-modal-card {
    background: var(--black);
    color: var(--white);
    border: 2px solid var(--white-a30);
    width: 100%;
    max-width: 480px;
    padding: 40px;
    position: relative;
    box-shadow: 0 32px 64px rgba(0, 0, 0, 0.95);
}

.b10-modal-card.white-card {
    background: var(--white);
    color: var(--black);
    border: 2px solid var(--black);
    max-width: 760px;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.modal-title {
    font-size: 1.6rem;
    font-weight: 900;
}

.modal-close-btn {
    color: inherit;
    font-size: 1.5rem;
}

.modal-desc-sub {
    font-size: 0.88rem;
    color: var(--white-a70);
    line-height: 1.5;
    margin-bottom: 24px;
}

.btn-social-auth {
    width: 100%;
    padding: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.auth-kakao {
    background: var(--white);
    color: var(--black);
    border: 1px solid var(--white);
}

.auth-naver {
    background: transparent;
    color: var(--white);
    border: 1px solid var(--white-a30);
}

.login-divider {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a50);
    text-align: center;
    margin: 20px 0;
}

.phone-input-row {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.b10-input-field {
    width: 100%;
    padding: 14px 16px;
    background: var(--black);
    border: 1px solid var(--white-a30);
    color: var(--white);
    font-size: 0.95rem;
}

.b10-input-field:focus {
    outline: none;
    border-color: var(--white);
}

.b10-btn-submit {
    width: 100%;
    padding: 14px;
    background: var(--white);
    color: var(--black);
    font-weight: 800;
    font-size: 0.95rem;
    border: 2px solid var(--white);
}

.b10-btn-submit:hover {
    background: var(--black);
    color: var(--white);
}

.modal-footer-cta {
    font-size: 0.8rem;
    color: var(--white-a70);
    text-align: center;
    margin-top: 24px;
}

.underline-link {
    text-decoration: underline;
    font-weight: 700;
    color: var(--white);
}

/* Legal Tabs */
.legal-tabs {
    display: flex;
    border-bottom: 1px solid var(--black-a20);
    margin-bottom: 24px;
}

.legal-tab-btn {
    padding: 10px 16px;
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--black-a60);
    border-bottom: 2px solid transparent;
}

.legal-tab-btn.active {
    color: var(--black);
    border-bottom: 2px solid var(--black);
}

.legal-content-box {
    max-height: 400px;
    overflow-y: auto;
    font-size: 0.85rem;
    line-height: 1.6;
    color: var(--black-a85);
    padding-right: 12px;
}

/* 16. RESPONSIVE ADJUSTMENTS */
@media (max-width: 1024px) {
    .calendar-schedule-grid {
        grid-template-columns: 70px repeat(2, 1fr);
    }
    .cal-staff-hdr:nth-child(4),
    .cal-slot:nth-child(4n) {
        display: none;
    }
    .ehr-stage-layout,
    .pos-stage-layout {
        grid-template-columns: 1fr;
    }
    .poster-stat-columns,
    .industry-monolith-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .poster-col {
        border-right: none;
        padding: 0;
    }
    .anduril-footer-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 60px;
    }
    .anduril-footer-columns {
        gap: 40px;
        width: 100%;
        justify-content: space-between;
    }
}

@media (max-width: 768px) {
    .b10-nav, .b10-header-actions .b10-btn-outline, .b10-header-actions .b10-btn-primary {
        display: none;
    }
    .b10-mobile-toggle {
        display: block;
    }
    .b10-header-inner,
    .hero-content,
    .sec-problem-inner,
    .editorial-container,
    .footer-stage-inner {
        padding-left: 20px;
        padding-right: 20px;
    }
    .hero-canvas {
        padding-top: 100px;
    }
    .hero-footer-row,
    .final-cta-cluster {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }
    .hero-actions {
        flex-direction: column;
    }
    .hero-footnote {
        text-align: left;
    }
    .calendar-schedule-grid {
        grid-template-columns: 60px 1fr;
    }
    .cal-staff-hdr:nth-child(3),
    .cal-slot:nth-child(4n-1) {
        display: none;
    }
    .poster-stat-columns,
    .industry-monolith-grid {
        grid-template-columns: 1fr;
    }
    .anduril-footer-columns {
        flex-direction: column;
        gap: 32px;
    }
    .anduril-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }
    .anduril-footer-contact {
        text-align: left;
    }
}

/* ==========================================================================
   17. SOLUTION PAGE ARCHITECTURE (SYSTEM DIAGRAM & FLOATING UI OBJECTS)
   ========================================================================== */
.sol-hero-canvas {
    padding: 180px 0 100px;
    background: var(--black);
    color: var(--white);
    border-bottom: 1px solid var(--white-a15);
}

.sol-meta-ribbon {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a70);
    margin-bottom: 24px;
}

.sol-tag-mono {
    border: 1px solid var(--white-a20);
    padding: 4px 10px;
    background: var(--white-a05);
}

.sol-giant-headline {
    font-size: clamp(3.2rem, 8vw, 8.5rem);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -0.04em;
    color: var(--white);
    margin-bottom: 28px;
}

.sol-editorial-lead {
    max-width: 780px;
    font-size: clamp(1.1rem, 2vw, 1.4rem);
    line-height: 1.6;
    color: var(--white-a85);
    margin-bottom: 56px;
}

.sol-telemetry-bar {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid var(--white-a20);
    border-bottom: 1px solid var(--white-a20);
    padding: 24px 0;
    gap: 20px;
}

.sol-telemetry-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-right: 1px solid var(--white-a15);
    padding-right: 20px;
}

.sol-telemetry-item:last-child {
    border-right: none;
    padding-right: 0;
}

.sol-telemetry-item .t-label {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--white-a60);
    letter-spacing: 0.08em;
}

.sol-telemetry-item .t-val {
    font-family: var(--font-mono);
    font-size: 0.92rem;
    font-weight: 800;
    color: var(--white);
}

.sol-system-diagram-main {
    background: var(--black);
    color: var(--white);
    padding: 60px 0 140px;
}

.diagram-spine-container {
    position: relative;
    max-width: 1360px;
    margin: 0 auto;
}

.diagram-node-block {
    padding: 80px 0;
    border-top: 1px solid var(--white-a15);
}

.node-meta-flag {
    display: flex;
    align-items: center;
    gap: 16px;
    font-family: var(--font-mono);
    font-size: 0.8rem;
    margin-bottom: 32px;
}

.node-idx {
    font-weight: 900;
    background: var(--white);
    color: var(--black);
    padding: 4px 10px;
}

.node-type {
    font-weight: 700;
    color: var(--white-a70);
    letter-spacing: 0.08em;
}

.node-status {
    color: var(--white);
    font-weight: 700;
}

.node-content-grid {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 64px;
    align-items: center;
}

.node-content-grid.reverse-layout {
    grid-template-columns: 1.25fr 1fr;
}

.node-title {
    font-size: clamp(2.2rem, 4.2vw, 4.2rem);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.035em;
    margin-bottom: 24px;
    color: var(--white);
}

.node-desc {
    font-size: 1.05rem;
    line-height: 1.65;
    color: var(--white-a80);
    margin-bottom: 32px;
}

.node-spec-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    border-top: 1px solid var(--white-a15);
    padding-top: 24px;
}

.spec-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.88rem;
    gap: 16px;
}

.spec-k {
    font-family: var(--font-mono);
    font-weight: 700;
    color: var(--white-a60);
    flex-shrink: 0;
}

.spec-v {
    text-align: right;
    color: var(--white-a90);
}

.diagram-connector-tube {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 32px 0;
    position: relative;
}

.connector-line {
    width: 2px;
    height: 50px;
    background: linear-gradient(to bottom, var(--white-a20), var(--white));
}

.connector-pill {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--white-a30);
    padding: 6px 16px;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--white);
    background: var(--black);
    margin-top: 6px;
}

.diagram-ui-frame {
    border: 2px solid var(--white-a30);
    background: var(--black);
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.9);
}

.diagram-ui-frame.dark-frame {
    background: var(--black);
    color: var(--white);
}

.diagram-ui-frame.light-frame {
    background: var(--white);
    color: var(--black);
    border-color: var(--white);
}

.invert-chrome {
    background: var(--white) !important;
    color: var(--black) !important;
    border-bottom: 2px solid var(--black) !important;
}

.invert-chrome .ui-dots span {
    border-color: var(--black) !important;
    background: var(--black) !important;
}

.ui-chrome-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 18px;
    border-bottom: 1px solid var(--white-a20);
    font-family: var(--font-mono);
    font-size: 0.75rem;
}

.ui-dots {
    display: flex;
    gap: 6px;
}

.ui-dots span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid var(--white);
}

.ui-chrome-title {
    font-weight: 700;
    letter-spacing: 0.08em;
}

.ui-chrome-tag {
    font-size: 0.7rem;
    font-weight: 800;
    background: var(--white);
    color: var(--black);
    padding: 2px 6px;
}

/* UI Inner Bodies */
.diagram-cal-body {
    padding: 24px;
}

.cal-hdr-strip {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 12px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--white-a60);
    border-bottom: 1px solid var(--white-a20);
    padding-bottom: 10px;
    margin-bottom: 14px;
}

.cal-time-slot-row {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--white-a10);
    font-size: 0.82rem;
    align-items: center;
}

.t-cell {
    font-family: var(--font-mono);
    color: var(--white-a50);
}

.slot-booked {
    border: 1px solid var(--white-a25);
    padding: 8px 12px;
    background: var(--white-a05);
}

.slot-booked.active-b {
    border-color: var(--white);
    background: var(--white-a15);
}

.slot-empty {
    border: 1px dashed var(--white-a20);
    padding: 8px 12px;
    color: var(--white-a40);
    font-size: 0.75rem;
}

.slot-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-family: var(--font-mono);
    background: var(--white);
    color: var(--black);
    padding: 2px 6px;
    font-weight: 800;
    margin-top: 4px;
}

/* EHR Dossier Body */
.diagram-ehr-body {
    padding: 28px;
    color: var(--black);
}

.ehr-top-meta {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 2px solid var(--black);
    padding-bottom: 18px;
    margin-bottom: 20px;
}

.cust-code {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black-a60);
}

.cust-name-lg {
    font-size: 1.8rem;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.cust-tags {
    display: flex;
    gap: 8px;
}

.c-tag-solid {
    background: var(--black);
    color: var(--white);
    font-size: 0.75rem;
    font-weight: 800;
    padding: 4px 10px;
}

.c-tag-outline {
    border: 1px solid var(--black);
    color: var(--black);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 10px;
}

.ehr-metrics-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    border-bottom: 1px solid var(--black-a15);
    padding-bottom: 18px;
    margin-bottom: 20px;
}

.e-metric .em-lbl {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black-a60);
    display: block;
    margin-bottom: 4px;
}

.e-metric .em-val {
    font-family: var(--font-mono);
    font-size: 1.3rem;
    font-weight: 900;
}

.stream-entry {
    border-left: 2px solid var(--black);
    padding-left: 14px;
    margin-bottom: 16px;
}

.entry-date {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black-a60);
}

.entry-detail strong {
    font-size: 0.95rem;
    font-weight: 800;
}

.entry-detail p {
    font-size: 0.85rem;
    color: var(--black-a75);
    margin-top: 4px;
}

/* POS Body */
.diagram-pos-body {
    padding: 32px;
}

.pos-ledger-metric {
    border-bottom: 2px solid var(--white);
    padding-bottom: 20px;
    margin-bottom: 24px;
}

.p-sub-lbl {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--white-a60);
    margin-bottom: 6px;
}

.p-giant-val {
    font-family: var(--font-mono);
    font-size: 2.8rem;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.pos-audit-table {
    display: flex;
    flex-direction: column;
    gap: 14px;
    font-size: 0.9rem;
    margin-bottom: 24px;
}

.audit-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--white-a10);
    padding-bottom: 10px;
}

.audit-row.audit-net {
    border-top: 1px solid var(--white-a30);
    border-bottom: none;
    padding-top: 12px;
    font-weight: 800;
    font-size: 1.05rem;
}

.a-mono {
    font-family: var(--font-mono);
    font-weight: 700;
}

.a-white {
    color: var(--white);
}

.pos-live-status-pill {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a70);
    border: 1px solid var(--white-a20);
    padding: 10px 14px;
    background: var(--white-a05);
}

/* Retention Body */
.diagram-retention-body {
    padding: 28px;
    color: var(--black);
}

.retention-lead-stat {
    display: flex;
    gap: 40px;
    border-bottom: 2px solid var(--black);
    padding-bottom: 18px;
    margin-bottom: 24px;
}

.r-lbl {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black-a60);
    display: block;
    margin-bottom: 4px;
}

.r-val {
    font-family: var(--font-mono);
    font-size: 2rem;
    font-weight: 900;
}

.retention-timeline-visual {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
}

.r-step-block {
    flex: 1;
    border: 1px solid var(--black-a30);
    padding: 12px;
    font-size: 0.8rem;
}

.r-step-block.highlight-step {
    border: 2px solid var(--black);
    background: var(--black);
    color: var(--white);
}

.step-day {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 800;
    margin-bottom: 4px;
}

.retention-sample-box {
    border: 1px solid var(--black-a20);
    padding: 16px;
    background: var(--black-a03);
}

.rs-head {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--black-a60);
    margin-bottom: 6px;
}

.rs-msg {
    font-size: 0.88rem;
    line-height: 1.5;
    font-weight: 600;
}

/* Kakao Body */
.diagram-kakao-body {
    padding: 32px;
}

.kakao-bubble-card {
    border: 1px solid var(--white-a30);
    padding: 24px;
    background: var(--white-a05);
    margin-bottom: 20px;
}

.k-bubble-badge {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 800;
    background: var(--white);
    color: var(--black);
    display: inline-block;
    padding: 2px 8px;
    margin-bottom: 12px;
}

.k-bubble-head {
    font-size: 1.15rem;
    margin-bottom: 12px;
}

.k-bubble-content p {
    font-size: 0.9rem;
    color: var(--white-a85);
    margin-bottom: 14px;
}

.k-detail-box {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    line-height: 1.7;
    color: var(--white-a70);
    border-top: 1px solid var(--white-a15);
    padding-top: 12px;
    margin-bottom: 16px;
}

.k-bubble-action-btn {
    border: 1px solid var(--white);
    padding: 10px;
    text-align: center;
    font-size: 0.85rem;
    font-weight: 700;
}

.kakao-audit-note {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
    text-align: center;
}

/* Report Body */
.diagram-report-body {
    padding: 28px;
    color: var(--black);
}

.report-meta-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 2px solid var(--black);
    padding-bottom: 16px;
    margin-bottom: 24px;
}

.r-period-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--black-a60);
}

.r-report-title {
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.r-badge-solid {
    background: var(--black);
    color: var(--white);
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    padding: 4px 8px;
}

.report-grid-columns {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    border-bottom: 1px solid var(--black-a20);
    padding-bottom: 24px;
    margin-bottom: 20px;
}

.r-col-lbl {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--black-a60);
    display: block;
    margin-bottom: 6px;
}

.r-col-val {
    font-family: var(--font-mono);
    font-size: 1.5rem;
    font-weight: 900;
    display: block;
    margin-bottom: 4px;
}

.r-col-delta {
    font-size: 0.75rem;
    font-weight: 700;
}

.report-summary-bar {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    color: var(--black-a80);
}

/* ==========================================================================
   18. INDUSTRIES PAGE ARCHITECTURE (VERTICAL ASYMMETRIC MONOLITHS)
   ========================================================================== */
.ind-hero-canvas {
    padding: 180px 0 80px;
    background: var(--black);
    color: var(--white);
    border-bottom: 1px solid var(--white-a15);
}

.ind-hero-tagline {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    color: var(--white-a60);
    margin-bottom: 12px;
}

.ind-hero-label {
    font-family: var(--font-mono);
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: var(--white);
}

.ind-giant-headline {
    font-size: clamp(3.2rem, 7.5vw, 7.8rem);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -0.04em;
    margin: 16px 0 24px;
}

.ind-editorial-lead {
    max-width: 780px;
    font-size: clamp(1.1rem, 2vw, 1.35rem);
    line-height: 1.6;
    color: var(--white-a85);
    margin-bottom: 40px;
}

.ind-jump-pills {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.jump-pill {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    border: 1px solid var(--white-a30);
    padding: 6px 14px;
    color: var(--white);
}

.jump-pill:hover {
    background: var(--white);
    color: var(--black);
}

.ind-section-block {
    padding: 140px 0;
    border-bottom: 2px solid var(--white-a15);
}

.ind-section-block.block-dark {
    background: var(--black);
    color: var(--white);
}

.ind-section-block.block-light {
    background: var(--white);
    color: var(--black);
    border-bottom: 2px solid var(--black);
}

.ind-section-header {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 48px;
    font-family: var(--font-mono);
}

.ind-num-badge {
    background: var(--white);
    color: var(--black);
    font-size: 0.75rem;
    font-weight: 800;
    padding: 4px 8px;
}

.ind-num-badge.dark-badge {
    background: var(--black);
    color: var(--white);
}

.ind-vertical-name {
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.1em;
}

.ind-kr-title {
    font-size: 0.85rem;
    color: var(--white-a60);
}

.ind-asymmetric-row {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 64px;
    align-items: center;
}

.ind-asymmetric-row.reverse-row {
    grid-template-columns: 1.25fr 1fr;
}

.ind-main-heading {
    font-size: clamp(2.4rem, 4.5vw, 4.5rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -0.035em;
    margin-bottom: 24px;
}

.ind-sub-copy {
    font-size: 1.05rem;
    line-height: 1.65;
    color: var(--white-a80);
    margin-bottom: 32px;
}

.ind-feature-tags-group {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.ind-tag-card {
    border: 1px solid var(--white-a20);
    padding: 18px 20px;
    background: var(--white-a05);
}

.ind-tag-card strong {
    font-size: 1rem;
    font-weight: 800;
    display: block;
    margin-bottom: 4px;
}

.ind-tag-card span {
    font-size: 0.85rem;
    color: var(--white-a70);
    line-height: 1.4;
}

.ind-tag-card.dark-border {
    border-color: var(--black-a30);
    background: var(--black-a03);
}

.ind-tag-card.dark-border strong {
    color: var(--black);
}

.ind-tag-card.dark-border span {
    color: var(--black-a75);
}

/* Industry Specific UI Inner Bodies */
.ind-salon-body {
    padding: 28px;
    color: var(--black);
}

.salon-client-hdr {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 2px solid var(--black);
    padding-bottom: 14px;
    margin-bottom: 20px;
}

.sc-badge {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 800;
    background: var(--black);
    color: var(--white);
    padding: 2px 6px;
}

.sc-name {
    font-size: 1.3rem;
    font-weight: 800;
}

.sc-designer {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
}

.salon-formula-sheet {
    border: 1px solid var(--black-a20);
    padding: 16px;
    background: var(--black-a03);
    margin-bottom: 20px;
}

.formula-head {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    margin-bottom: 12px;
}

.formula-table {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 0.82rem;
    border-bottom: 1px solid var(--black-a15);
    padding-bottom: 12px;
    margin-bottom: 12px;
}

.f-row {
    display: flex;
    justify-content: space-between;
}

.formula-note {
    font-size: 0.78rem;
    color: var(--black-a75);
}

.salon-action-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 0.78rem;
}

.s-tag-black {
    background: var(--black);
    color: var(--white);
    padding: 4px 8px;
    font-weight: 800;
}

/* Beauty Body */
.ind-beauty-body {
    padding: 32px;
}

.beauty-ticket-card {
    border: 1px solid var(--white-a30);
    padding: 20px;
    background: var(--white-a05);
    margin-bottom: 20px;
}

.bt-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    font-weight: 800;
}

.bt-badge {
    background: var(--white);
    color: var(--black);
    font-family: var(--font-mono);
    font-size: 0.72rem;
    padding: 2px 8px;
    font-weight: 800;
}

.bt-progress-bar {
    width: 100%;
    height: 6px;
    background: var(--white-a20);
    margin-bottom: 12px;
}

.bt-fill {
    height: 100%;
    background: var(--white);
}

.bt-meta-line {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
}

.beauty-skin-table {
    border: 1px solid var(--white-a20);
    padding: 16px;
    margin-bottom: 20px;
}

.st-head {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    margin-bottom: 12px;
}

.st-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.st-lbl {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    color: var(--white-a60);
    display: block;
    margin-bottom: 2px;
}

.st-val {
    font-size: 0.95rem;
    font-weight: 800;
}

.beauty-alert-box {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    border: 1px solid var(--white-a20);
    padding: 10px;
    color: var(--white-a80);
}

/* Nail Body */
.ind-nail-body {
    padding: 28px;
    color: var(--black);
}

.nail-calc-card {
    border: 1px solid var(--black-a20);
    padding: 20px;
    background: var(--black-a03);
    margin-bottom: 18px;
}

.nc-head {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 800;
    margin-bottom: 14px;
}

.nc-options-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 0.85rem;
    border-bottom: 1px solid var(--black-a15);
    padding-bottom: 14px;
    margin-bottom: 14px;
}

.nc-opt-row {
    display: flex;
    justify-content: space-between;
}

.nc-total-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9rem;
}

.nc-price {
    font-family: var(--font-mono);
    font-size: 1.15rem;
    font-weight: 900;
}

.nail-buffer-alert {
    font-size: 0.8rem;
    color: var(--black-a75);
    line-height: 1.5;
}

/* Fitness Body */
.ind-fitness-body {
    padding: 32px;
}

.fit-session-hero {
    border-bottom: 2px solid var(--white);
    padding-bottom: 20px;
    margin-bottom: 24px;
}

.fs-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
    margin-bottom: 4px;
}

.fs-giant-num {
    font-family: var(--font-mono);
    font-size: 3rem;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.fs-sub-lbl {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--white-a80);
}

.fit-attendance-log {
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 0.85rem;
    font-family: var(--font-mono);
    margin-bottom: 20px;
}

.fl-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--white-a10);
    padding-bottom: 8px;
}

.fl-status {
    color: var(--white);
    font-weight: 700;
}

.fl-status-up {
    color: var(--white-a60);
}

.fit-action-trigger {
    border: 1px solid var(--white-a20);
    padding: 10px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a80);
}

/* Studio Body */
.ind-studio-body {
    padding: 28px;
    color: var(--black);
}

.studio-room-strip {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
}

.s-room-item {
    flex: 1;
    border: 1px solid var(--black-a20);
    padding: 18px;
}

.s-room-item.active-room {
    border: 2px solid var(--black);
}

.sr-badge {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 800;
    background: var(--black);
    color: var(--white);
    padding: 2px 6px;
}

.sr-title {
    font-size: 1.1rem;
    font-weight: 900;
    margin: 8px 0 4px;
}

.sr-booking {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--black-a60);
    margin-bottom: 6px;
}

.sr-escrow {
    font-size: 0.78rem;
    font-weight: 700;
}

.studio-telemetry-alert {
    font-size: 0.8rem;
    color: var(--black-a75);
}

/* ==========================================================================
   19. PRICING PAGE ARCHITECTURE (GIANT NUMBER CENTRIC)
   ========================================================================== */
.price-giant-canvas {
    padding: 180px 0 100px;
    background: var(--black);
    color: var(--white);
    border-bottom: 1px solid var(--white-a15);
}

.price-top-meta {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a60);
    margin-bottom: 40px;
}

.price-monolith-stage {
    position: relative;
    text-align: center;
    padding: 40px 0 60px;
}

.giant-num-display {
    font-family: var(--font-mono);
    font-size: clamp(5.5rem, 16vw, 15rem);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.05em;
    color: var(--white);
}

.giant-currency-unit {
    font-family: var(--font-mono);
    font-size: clamp(1.2rem, 3vw, 2.4rem);
    font-weight: 800;
    letter-spacing: 0.12em;
    color: var(--white-a70);
    margin-top: 12px;
}

.giant-sub-guarantee {
    font-family: var(--font-mono);
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--white-a60);
    margin-top: 16px;
}

.perimeter-features-constellation {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: 1100px;
    margin: 64px auto 0;
    text-align: left;
}

.p-feature-node {
    border: 1px solid var(--white-a20);
    padding: 24px;
    background: var(--white-a05);
}

.p-node-idx {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--white-a50);
    display: block;
    margin-bottom: 4px;
}

.p-node-title {
    font-size: 1.15rem;
    font-weight: 900;
    display: block;
    margin-bottom: 6px;
}

.p-node-desc {
    font-size: 0.85rem;
    color: var(--white-a70);
    line-height: 1.45;
}

.price-hero-action-row {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 60px;
}

.btn-price-primary {
    font-size: 1.05rem;
    font-weight: 800;
    padding: 18px 40px;
    background: var(--white);
    color: var(--black);
    border: 2px solid var(--white);
}

.btn-price-primary:hover {
    background: var(--black);
    color: var(--white);
}

.btn-price-outline {
    font-size: 1.05rem;
    font-weight: 700;
    padding: 18px 36px;
    border: 2px solid var(--white-a70);
    color: var(--white);
}

.btn-price-outline:hover {
    background: var(--white);
    color: var(--black);
}

/* Pricing Specification Sections */
.price-editorial-sections {
    background: var(--black);
    color: var(--white);
    padding: 80px 0 140px;
}

.price-spec-block {
    padding: 80px 0;
    border-top: 1px solid var(--white-a15);
}

.spec-head-editorial {
    margin-bottom: 48px;
}

.spec-idx-mono {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--white-a60);
    display: block;
    margin-bottom: 8px;
}

.spec-section-title {
    font-size: clamp(2.2rem, 4vw, 3.8rem);
    font-weight: 900;
    letter-spacing: -0.035em;
    margin-bottom: 16px;
}

.spec-section-desc {
    font-size: 1.05rem;
    color: var(--white-a75);
    max-width: 680px;
    line-height: 1.6;
}

.spec-architectural-table {
    display: flex;
    flex-direction: column;
}

.spec-row-item {
    display: grid;
    grid-template-columns: 240px 1fr 140px;
    padding: 24px 0;
    border-bottom: 1px solid var(--white-a15);
    align-items: center;
    gap: 32px;
}

.s-col-k {
    display: flex;
    align-items: center;
    gap: 14px;
}

.k-num {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--white-a50);
}

.k-name {
    font-size: 1.1rem;
    font-weight: 800;
}

.s-col-v strong {
    font-size: 0.95rem;
    display: block;
    margin-bottom: 4px;
}

.s-col-v p {
    font-size: 0.85rem;
    color: var(--white-a70);
    line-height: 1.45;
}

.s-col-status {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 800;
    text-align: right;
    border: 1px solid var(--white-a30);
    padding: 6px 12px;
}

.price-pillars-triad {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.pillar-monolith {
    border: 2px solid var(--white-a25);
    padding: 40px 28px;
    background: var(--black);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 300px;
}

.pillar-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--white-a60);
    margin-bottom: 16px;
}

.pillar-title {
    font-size: 1.6rem;
    font-weight: 900;
    margin-bottom: 14px;
}

.pillar-desc {
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--white-a75);
    margin-bottom: 24px;
}

.pillar-foot-note {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    border-top: 1px solid var(--white-a15);
    padding-top: 16px;
    color: var(--white);
}

/* ==========================================================================
   20. RESOURCES PAGE ARCHITECTURE (EDITORIAL LIST CATALOG)
   ========================================================================== */
.res-hero-canvas {
    padding: 180px 0 80px;
    background: var(--black);
    color: var(--white);
    border-bottom: 1px solid var(--white-a15);
}

.res-hero-tagline {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    color: var(--white-a60);
    margin-bottom: 12px;
}

.res-hero-label {
    font-family: var(--font-mono);
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.res-giant-headline {
    font-size: clamp(3.2rem, 7.5vw, 7.5rem);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -0.04em;
    margin: 16px 0 24px;
}

.res-editorial-lead {
    max-width: 780px;
    font-size: clamp(1.1rem, 2vw, 1.35rem);
    line-height: 1.6;
    color: var(--white-a85);
}

.res-editorial-catalog {
    background: var(--black);
    color: var(--white);
    padding: 60px 0 140px;
}

.res-catalog-table {
    display: flex;
    flex-direction: column;
}

.res-catalog-row {
    display: grid;
    grid-template-columns: 120px 1fr 220px;
    gap: 40px;
    padding: 56px 0;
    border-top: 1px solid var(--white-a20);
    align-items: flex-start;
    transition: all 0.2s ease;
}

.res-catalog-row:hover {
    padding-left: 16px;
    background: var(--white-a05);
}

.r-index-giant {
    font-family: var(--font-mono);
    font-size: 3.5rem;
    font-weight: 900;
    color: var(--white-a40);
    line-height: 1;
}

.res-row-meta {
    display: flex;
    gap: 16px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
    margin-bottom: 10px;
}

.r-cat-tag {
    font-weight: 800;
    color: var(--white);
    letter-spacing: 0.08em;
}

.res-row-title {
    font-size: 1.85rem;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.03em;
    margin-bottom: 14px;
}

.res-row-excerpt {
    font-size: 0.98rem;
    line-height: 1.65;
    color: var(--white-a75);
    max-width: 760px;
}

.res-technical-badge {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    border: 1px solid var(--white-a30);
    padding: 6px 12px;
    text-align: right;
    color: var(--white-a70);
}

/* ==========================================================================
   21. CONTACT PAGE ARCHITECTURE (GIANT APPLICATION SHEET)
   ========================================================================== */
.contact-fullpage-canvas {
    padding: 180px 0 140px;
    background: var(--black);
    color: var(--white);
}

.contact-meta-header {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a60);
    margin-bottom: 24px;
}

.contact-giant-headline {
    font-size: clamp(3.4rem, 8vw, 8.8rem);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -0.04em;
    margin-bottom: 24px;
}

.contact-editorial-sub {
    max-width: 780px;
    font-size: clamp(1.1rem, 2vw, 1.4rem);
    line-height: 1.6;
    color: var(--white-a85);
    margin-bottom: 64px;
}

.contact-giant-form {
    display: flex;
    flex-direction: column;
    gap: 48px;
    border-top: 2px solid var(--white-a25);
    padding-top: 48px;
}

.contact-form-row {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 40px;
    align-items: flex-start;
}

.row-label-col {
    display: flex;
    flex-direction: column;
}

.row-num {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 800;
    color: var(--white-a40);
    margin-bottom: 4px;
}

.row-field-name {
    font-family: var(--font-mono);
    font-size: 1.15rem;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.row-field-kr {
    font-size: 0.82rem;
    color: var(--white-a60);
    margin-top: 2px;
}

.giant-line-input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 2px solid var(--white-a40);
    color: var(--white);
    font-size: 1.35rem;
    padding: 14px 0;
    font-weight: 700;
    outline: none;
    transition: border-color 0.2s ease;
}

.giant-line-input:focus {
    border-bottom-color: var(--white);
}

.giant-line-textarea {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 2px solid var(--white-a40);
    color: var(--white);
    font-size: 1.1rem;
    padding: 14px 0;
    font-family: inherit;
    outline: none;
    resize: vertical;
}

.giant-line-textarea:focus {
    border-bottom-color: var(--white);
}

.ind-select-grid {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.form-choice-pill {
    border: 1px solid var(--white-a40);
    background: transparent;
    color: var(--white);
    padding: 12px 20px;
    font-size: 0.92rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.15s ease;
}

.form-choice-pill:hover {
    border-color: var(--white);
}

.form-choice-pill.active {
    background: var(--white);
    color: var(--black);
    border-color: var(--white);
}

.contact-double-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.contact-submit-stage {
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.btn-giant-start {
    font-size: 1.35rem;
    font-weight: 900;
    padding: 24px 56px;
    background: var(--white);
    color: var(--black);
    border: 2px solid var(--white);
    cursor: pointer;
    align-self: flex-start;
    transition: all 0.2s ease;
}

.btn-giant-start:hover {
    background: var(--black);
    color: var(--white);
}

.contact-submission-notice {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: var(--white-a60);
}

.contact-feedback-box {
    margin-top: 24px;
    padding: 24px;
    border: 2px solid var(--white);
    background: var(--black);
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.6;
}

/* ==========================================================================
   22. LOGIN PAGE ARCHITECTURE (EXTREME MINIMALISM)
   ========================================================================== */
.login-body-layout {
    background: var(--black);
    color: var(--white);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.login-viewport-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 32px 40px;
}

.login-minimal-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 0.8rem;
}

.login-back-link {
    font-weight: 700;
    color: var(--white);
}

.login-system-pill {
    border: 1px solid var(--white-a30);
    padding: 4px 10px;
    color: var(--white-a70);
}

.login-stage-container {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 0;
}

.login-monolith-box {
    width: 100%;
    max-width: 440px;
    border: 2px solid var(--white-a30);
    padding: 48px 40px;
    background: var(--black);
    box-shadow: 0 32px 64px rgba(0, 0, 0, 0.95);
}

.login-brand-head {
    text-align: center;
    margin-bottom: 36px;
}

.login-brand-logo {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 1.1rem;
    font-weight: 900;
    letter-spacing: -0.02em;
    margin-bottom: 16px;
}

.login-gate-title {
    font-family: var(--font-mono);
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.login-gate-sub {
    font-size: 0.82rem;
    color: var(--white-a60);
    margin-top: 4px;
}

.login-gate-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.login-field-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.login-field-lbl {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--white-a70);
}

.login-input-clean {
    width: 100%;
    padding: 14px 16px;
    background: var(--black);
    border: 1px solid var(--white-a30);
    color: var(--white);
    font-size: 0.95rem;
    outline: none;
}

.login-input-clean:focus {
    border-color: var(--white);
}

.btn-login-submit {
    width: 100%;
    padding: 16px;
    background: var(--white);
    color: var(--black);
    font-weight: 900;
    font-size: 1.05rem;
    border: 2px solid var(--white);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-login-submit:hover {
    background: var(--black);
    color: var(--white);
}

.login-or-divider {
    text-align: center;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a40);
    position: relative;
    margin: 8px 0;
}

.login-social-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.btn-social-mono {
    width: 100%;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: var(--white);
    color: var(--black);
    font-weight: 800;
    font-size: 0.9rem;
    border: 1px solid var(--white);
    cursor: pointer;
}

.btn-social-mono.outline-mono {
    background: transparent;
    color: var(--white);
    border-color: var(--white-a30);
}

.login-demo-strip {
    text-align: center;
    margin-top: 12px;
}

.login-direct-demo {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--white-a85);
    text-decoration: underline;
}

.login-foot-meta {
    text-align: center;
    font-size: 0.8rem;
    color: var(--white-a60);
    margin-top: 24px;
}

.login-foot-meta a {
    color: var(--white);
    font-weight: 700;
    text-decoration: underline;
}

.login-bottom-bar {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a40);
}

/* ==========================================================================
   23. ADMIN DASHBOARD ARCHITECTURE (FUNCTION FIRST EDITORIAL DASHBOARD)
   ========================================================================== */
.admin-body-layout {
    background: var(--black);
    color: var(--white);
    margin: 0;
    overflow-x: hidden;
}

.admin-app-shell {
    display: flex;
    min-height: 100vh;
}

.admin-sidebar {
    width: 260px;
    background: var(--black);
    border-right: 1px solid var(--white-a15);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: sticky;
    top: 0;
    height: 100vh;
    flex-shrink: 0;
    padding: 24px 20px;
}

.admin-sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.admin-brand-logo {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 900;
    font-size: 1.15rem;
    letter-spacing: -0.03em;
}

.admin-live-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    border: 1px solid var(--white-a30);
    padding: 2px 6px;
    color: var(--white);
}

.admin-store-selector {
    border: 1px solid var(--white-a20);
    padding: 12px;
    background: var(--white-a05);
    margin-bottom: 24px;
}

.store-badge-lbl {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--white-a50);
}

.store-name-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.88rem;
    margin-top: 4px;
}

.admin-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
}

.sidebar-nav-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--white-a70);
    border: 1px solid transparent;
}

.sidebar-nav-item:hover {
    color: var(--white);
    background: var(--white-a05);
}

.sidebar-nav-item.active {
    color: var(--white);
    background: var(--white-a15);
    border-color: var(--white-a30);
    font-weight: 800;
}

.nav-icon {
    font-family: var(--font-mono);
    font-size: 1rem;
    width: 20px;
}

.admin-sidebar-footer {
    border-top: 1px solid var(--white-a15);
    padding-top: 18px;
}

.user-role-badge {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    font-weight: 800;
    color: var(--white-a50);
}

.user-name {
    font-size: 0.95rem;
    font-weight: 800;
}

.user-email {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a50);
    margin-bottom: 12px;
}

.admin-sidebar-action-row {
    display: flex;
    gap: 12px;
    font-size: 0.78rem;
    font-family: var(--font-mono);
}

.sidebar-btn-exit {
    color: var(--white-a70);
    text-decoration: underline;
}

.sidebar-btn-exit:hover {
    color: var(--white);
}

/* Admin Main Stage */
.admin-main-stage {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.admin-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 36px;
    border-bottom: 1px solid var(--white-a15);
    background: var(--black);
    position: sticky;
    top: 0;
    z-index: 100;
}

.topbar-date-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: var(--font-mono);
    font-size: 0.8rem;
}

.t-date-chip {
    font-weight: 800;
}

.t-time-mono {
    color: var(--white-a60);
}

.t-status-live {
    font-weight: 700;
}

.topbar-quick-actions {
    display: flex;
    gap: 12px;
}

.btn-topbar-dark {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 700;
    padding: 8px 16px;
    border: 1px solid var(--white-a40);
    background: transparent;
    color: var(--white);
    cursor: pointer;
}

.btn-topbar-white {
    font-family: var(--font-mono);
    font-size: 0.82rem;
    font-weight: 800;
    padding: 8px 16px;
    background: var(--white);
    color: var(--black);
    border: 1px solid var(--white);
    cursor: pointer;
}

.admin-content-canvas {
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* KPI Asymmetric Grid */
.admin-kpi-asymmetric-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1.6fr 1fr 1fr;
    gap: 16px;
}

.kpi-panel-monolith {
    border: 1px solid var(--white-a20);
    padding: 24px;
    background: var(--white-a03);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.kpi-panel-monolith.kpi-hero-cell {
    border-color: var(--white-a40);
    background: var(--white-a06);
}

.kpi-tag-mono {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 800;
    color: var(--white-a60);
    margin-bottom: 8px;
}

.kpi-giant-figure {
    font-family: var(--font-mono);
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 8px;
}

.kpi-unit {
    font-size: 1.2rem;
    font-weight: 700;
    margin-left: 2px;
}

.kpi-breakdown-line {
    font-size: 0.78rem;
    color: var(--white-a70);
    margin-bottom: 12px;
}

.kpi-dot {
    margin: 0 4px;
}

.kpi-status-badge {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    border: 1px solid var(--white-a20);
    padding: 4px 8px;
    color: var(--white-a85);
}

.kpi-status-badge.positive {
    border-color: var(--white);
    color: var(--white);
    font-weight: 800;
}

/* Admin Stream Split */
.admin-stream-split-section {
    display: grid;
    grid-template-columns: 1.8fr 1fr;
    gap: 24px;
}

.admin-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 16px;
}

.c-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--white-a60);
    display: block;
    margin-bottom: 4px;
}

.c-title {
    font-size: 1.35rem;
    font-weight: 900;
}

.c-filter-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
}

.admin-timetable-table {
    border: 1px solid var(--white-a20);
    background: var(--black);
}

.at-header-row {
    display: grid;
    grid-template-columns: 90px 1.2fr 1fr 1fr;
    gap: 12px;
    padding: 12px 16px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--white-a60);
    border-bottom: 1px solid var(--white-a20);
}

.at-slot-row {
    display: grid;
    grid-template-columns: 90px 1.2fr 1fr 1fr;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--white-a10);
    align-items: center;
    font-size: 0.85rem;
}

.at-slot-row.now-row {
    background: var(--white-a05);
    border-color: var(--white-a30);
}

.at-time {
    font-family: var(--font-mono);
    font-weight: 700;
    color: var(--white-a60);
}

.at-booking-chip {
    border: 1px solid var(--white-a25);
    padding: 8px 12px;
    font-size: 0.8rem;
}

.at-booking-chip.done {
    opacity: 0.65;
}

.at-booking-chip.in-progress {
    border: 2px solid var(--white);
    background: var(--white-a10);
}

.chip-badge {
    display: block;
    font-family: var(--font-mono);
    font-size: 0.68rem;
    font-weight: 800;
    margin-top: 4px;
}

.chip-badge-alt {
    display: block;
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: var(--white-a70);
    margin-top: 4px;
}

.at-empty-chip {
    border: 1px dashed var(--white-a15);
    padding: 8px 12px;
    color: var(--white-a30);
    font-size: 0.75rem;
}

/* Side Card */
.admin-side-card {
    border: 1px solid var(--white-a20);
    padding: 24px;
    background: var(--white-a03);
    margin-bottom: 24px;
}

.asc-title {
    font-size: 1.15rem;
    font-weight: 900;
}

.asc-ledger-rows {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 0.85rem;
    margin: 16px 0;
}

.al-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--white-a10);
    padding-bottom: 8px;
}

.al-row.highlight-net {
    border-top: 1px solid var(--white-a30);
    border-bottom: none;
    padding-top: 10px;
    font-weight: 800;
    font-size: 0.95rem;
}

.al-val {
    font-family: var(--font-mono);
    font-weight: 700;
}

.btn-admin-action {
    width: 100%;
    padding: 12px;
    background: var(--white);
    color: var(--black);
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 800;
    border: 1px solid var(--white);
    cursor: pointer;
}

.asc-recall-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 16px 0;
}

.recall-item {
    border-left: 2px solid var(--white);
    padding-left: 12px;
}

.ri-name {
    font-weight: 800;
    font-size: 0.85rem;
}

.ri-msg {
    font-size: 0.78rem;
    color: var(--white-a70);
}

.ri-status {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a50);
}

.ri-status.success {
    color: var(--white);
    font-weight: 700;
}

.recall-foot-stat {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: var(--white-a60);
    border-top: 1px solid var(--white-a15);
    padding-top: 10px;
}

/* Ledger Data Table */
.admin-search-input {
    padding: 8px 14px;
    background: var(--black);
    border: 1px solid var(--white-a30);
    color: var(--white);
    font-size: 0.82rem;
    width: 320px;
}

.admin-table-frame {
    border: 1px solid var(--white-a20);
    overflow-x: auto;
}

.admin-data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.admin-data-table th {
    padding: 12px 16px;
    text-align: left;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--white-a60);
    border-bottom: 1px solid var(--white-a20);
    background: var(--white-a03);
}

.admin-data-table td {
    padding: 14px 16px;
    border-bottom: 1px solid var(--white-a10);
}

.tr-active-now {
    background: var(--white-a06);
}

.mono-td {
    font-family: var(--font-mono);
}

.badge-vip {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    background: var(--white);
    color: var(--black);
    font-weight: 800;
    padding: 1px 4px;
}

.badge-regular {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    border: 1px solid var(--white-a40);
    padding: 1px 4px;
}

.badge-new {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    border: 1px solid var(--white);
    padding: 1px 4px;
}

.status-pill-done {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    border: 1px solid var(--white-a40);
    padding: 3px 8px;
}

.status-pill-wait {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a60);
}

.status-pulse-live {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 800;
}

.btn-table-sm {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 10px;
    border: 1px solid var(--white-a40);
    background: transparent;
    color: var(--white);
    cursor: pointer;
}

.btn-table-sm:hover {
    background: var(--white);
    color: var(--black);
}

.tap-amount-input-box {
    margin-bottom: 14px;
}

.tap-amount-input-box label {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: var(--white-a70);
    display: block;
    margin-bottom: 6px;
}

.tap-fee-preview {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    margin-bottom: 20px;
    color: var(--white-a85);
}

/* Responsive adjustments for Expanded Pages */
@media (max-width: 1024px) {
    .sol-telemetry-bar {
        grid-template-columns: repeat(2, 1fr);
    }
    .node-content-grid,
    .node-content-grid.reverse-layout,
    .ind-asymmetric-row,
    .ind-asymmetric-row.reverse-row {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .perimeter-features-constellation {
        grid-template-columns: repeat(2, 1fr);
    }
    .spec-row-item {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .s-col-status {
        text-align: left;
        width: fit-content;
    }
    .price-pillars-triad {
        grid-template-columns: 1fr;
    }
    .res-catalog-row {
        grid-template-columns: 80px 1fr;
    }
    .res-technical-badge {
        display: none;
    }
    .contact-form-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .admin-kpi-asymmetric-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .admin-stream-split-section {
        grid-template-columns: 1fr;
    }
    .admin-sidebar {
        width: 220px;
    }
}

@media (max-width: 768px) {
    .sol-hero-canvas,
    .ind-hero-canvas,
    .price-giant-canvas,
    .res-hero-canvas,
    .contact-fullpage-canvas {
        padding-top: 120px;
    }
    .sol-telemetry-bar {
        grid-template-columns: 1fr;
    }
    .perimeter-features-constellation {
        grid-template-columns: 1fr;
    }
    .res-catalog-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .r-index-giant {
        font-size: 2.2rem;
    }
    .admin-app-shell {
        flex-direction: column;
    }
    .admin-sidebar {
        width: 100%;
        height: auto;
        position: static;
        border-right: none;
        border-bottom: 1px solid var(--white-a15);
    }
    .admin-topbar {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        padding: 16px 20px;
    }
    .topbar-quick-actions {
        flex-direction: column;
    }
    .admin-kpi-asymmetric-grid {
        grid-template-columns: 1fr;
    }
    .admin-content-canvas {
        padding: 20px;
    }
}

/* ==========================================================================
   24. EDITORIAL BUSINESS TECHNOLOGY SUITE (WHITE & PAPER PALETTES)
   ========================================================================== */

/* Page Background Palette Classes */
.page-white-editorial {
    background: #FFFFFF;
    color: #111111;
}

.page-paper-editorial {
    background: #F6F5F0;
    color: #1A1A1A;
}

.page-dark-editorial {
    background: #0A0A0A;
    color: #FFFFFF;
}

/* Light / Paper Nav Headers */
.header-light {
    background: rgba(255, 255, 255, 0.95) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.header-light.scrolled {
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.header-light .b10-nav-link {
    color: rgba(0, 0, 0, 0.65) !important;
}

.header-light .b10-nav-link:hover,
.header-light .b10-nav-link.active {
    color: #000000 !important;
    font-weight: 700;
}

.header-light .b10-logo {
    color: #000000 !important;
}

.header-light .b10-btn-text {
    color: #000000 !important;
}

.header-light .b10-mobile-toggle {
    color: #000000 !important;
    border-color: rgba(0, 0, 0, 0.25) !important;
}

.dark-glyph {
    background: #000000 !important;
}

.dark-outline {
    border-color: rgba(0, 0, 0, 0.3) !important;
    color: #000000 !important;
}

.dark-outline:hover {
    border-color: #000000 !important;
    background: rgba(0, 0, 0, 0.05) !important;
}

.dark-fill {
    background: #000000 !important;
    color: #FFFFFF !important;
}

.header-paper {
    background: rgba(246, 245, 240, 0.95) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.header-paper.scrolled {
    background: rgba(246, 245, 240, 0.98) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.14) !important;
}

.header-paper .b10-logo,
.header-paper .b10-btn-text {
    color: #1A1A1A !important;
}

.header-paper .b10-mobile-toggle {
    color: #1A1A1A !important;
    border-color: rgba(0, 0, 0, 0.25) !important;
}

.header-paper .b10-nav-link {
    color: rgba(26, 26, 26, 0.65) !important;
}

.header-paper .b10-nav-link:hover,
.header-paper .b10-nav-link.active {
    color: #000000 !important;
    font-weight: 700;
}

/* --------------------------------------------------------------------------
   SOLUTION: TECHNICAL BLUEPRINT (WHITE BACKGROUND + BLACK LINES)
   -------------------------------------------------------------------------- */
.sol-draft-header {
    background: #FFFFFF;
    padding: 160px 0 60px;
    border-bottom: 1px solid #E5E7EB;
}

.draft-meta-top {
    display: flex;
    justify-content: space-between;
    padding-bottom: 24px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 48px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #6B7280;
}

.draft-hero-grid {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 50px;
}

.draft-node-mono {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    letter-spacing: 0.16em;
    color: #4B5563;
    display: block;
    margin-bottom: 14px;
}

.draft-title {
    font-family: var(--font-sans);
    font-size: clamp(2.8rem, 6vw, 4.2rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.05;
    margin-bottom: 24px;
    color: #111827;
}

.draft-lead {
    font-size: 1.08rem;
    line-height: 1.75;
    color: #374151;
}

.draft-spec-box {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 24px;
}

.dsb-title {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: #6B7280;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
}

.dsb-row {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #F3F4F6;
    font-family: var(--font-mono);
    font-size: 0.75rem;
}

.dsb-row:last-child {
    border-bottom: none;
}

.dsb-row .k {
    color: #6B7280;
}

.dsb-row .v {
    font-weight: 700;
    color: #111827;
}

.draft-pipeline-index {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    overflow-x: auto;
}

.dpi-step {
    font-family: var(--font-mono);
    font-size: 0.74rem;
    display: flex;
    gap: 8px;
    align-items: center;
    white-space: nowrap;
    color: #4B5563;
    text-decoration: none;
    transition: color 0.2s;
}

.dpi-step:hover,
.dpi-step.highlight {
    color: #000000;
    font-weight: 700;
}

.dpi-sep {
    color: #9CA3AF;
    font-size: 0.72rem;
}

/* Blueprint Body Track */
.sol-blueprint-body {
    background: #FFFFFF;
    padding: 80px 0 120px;
}

.blueprint-track {
    max-width: 1200px;
    margin: 0 auto;
}

.bp-node-row {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: center;
    padding: 60px 0;
}

.bp-node-row.reverse {
    grid-template-columns: 1.2fr 1fr;
}

.bp-coord-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    letter-spacing: 0.16em;
    color: #6B7280;
    margin-bottom: 10px;
}

.bp-node-title {
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    margin-bottom: 6px;
    color: #111827;
}

.bp-node-subtitle {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 700;
    color: #4B5563;
    letter-spacing: 0.1em;
    margin-bottom: 18px;
}

.bp-node-desc {
    font-size: 1rem;
    line-height: 1.75;
    color: #374151;
    margin-bottom: 24px;
}

.bp-metric-strip {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    padding-top: 18px;
    border-top: 1px solid #E5E7EB;
}

.bp-metric-strip .lbl {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #6B7280;
    display: block;
    margin-bottom: 4px;
}

.bp-metric-strip .val {
    font-size: 0.9rem;
    font-weight: 700;
    color: #111827;
}

/* White Terminal Card (Real Product UI Container) */
.white-terminal-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.wtc-chrome {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 18px;
    background: #F9FAFB;
    border-bottom: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.7rem;
    color: #4B5563;
}

.wtc-badge {
    color: #111827;
    font-weight: 700;
}

.wtc-body {
    padding: 24px;
}

.wtc-cal-header {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: #4B5563;
    margin-bottom: 14px;
}

.wtc-cal-row {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 10px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.84rem;
}

.wtc-cal-row .t-col {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #6B7280;
}

.slot-item {
    padding: 8px 12px;
    border-left: 2px solid #E5E7EB;
    font-size: 0.82rem;
    line-height: 1.4;
}

.slot-item.confirmed {
    border-left-color: #111827;
    background: #F9FAFB;
}

.slot-item.confirmed strong {
    color: #111827;
}

.slot-item.in-progress {
    border-left-color: #2563EB;
    background: #EFF6FF;
}

.slot-item.open {
    color: #9CA3AF;
    font-style: italic;
}

.slot-item .chip {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 0.68rem;
    padding: 2px 6px;
    background: #E5E7EB;
    color: #374151;
    margin-top: 4px;
}

/* Connectors */
.bp-connector-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 20px 0;
}

.bp-wire-line {
    width: 1px;
    height: 48px;
    background: #D1D5DB;
}

.bp-wire-label {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    letter-spacing: 0.14em;
    padding: 6px 16px;
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    color: #4B5563;
}

/* Admin Centerpiece Monolith on White */
.bp-admin-monolith {
    margin: 60px 0;
    padding: 48px 40px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
}

.bam-header {
    margin-bottom: 32px;
}

.bam-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    letter-spacing: 0.16em;
    color: #6B7280;
    margin-bottom: 10px;
}

.bam-title {
    font-size: 2.2rem;
    font-weight: 900;
    color: #111827;
    margin-bottom: 10px;
}

.bam-sub {
    font-size: 0.98rem;
    color: #4B5563;
}

.bam-screen-window {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.04);
}

.bam-window-bar {
    display: flex;
    align-items: center;
    padding: 12px 18px;
    background: #F3F4F6;
    border-bottom: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #4B5563;
}

.bam-window-bar .title {
    flex: 1;
    margin-left: 14px;
    font-weight: 700;
}

.bam-window-body {
    padding: 32px;
}

.bam-grid {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 32px;
}

.bam-kpi-card {
    padding: 18px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    margin-bottom: 14px;
}

.bam-kpi-card .lbl {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #6B7280;
    display: block;
    margin-bottom: 6px;
}

.bam-kpi-card .fig {
    font-family: var(--font-mono);
    font-size: 1.8rem;
    font-weight: 800;
    color: #111827;
}

.bam-kpi-card .sub {
    font-size: 0.75rem;
    color: #4B5563;
}

.bam-table-title {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: #111827;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 14px;
}

.bam-table-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.88rem;
}

.bam-table-row.active-now {
    background: #F9FAFB;
    padding: 12px 10px;
}

.bam-table-row .t-time {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: #6B7280;
    width: 90px;
}

.bam-table-row .t-detail {
    flex: 1;
}

.bam-table-row .t-badge {
    font-size: 0.75rem;
    padding: 4px 8px;
    background: #E5E7EB;
}

.bam-cta-line {
    margin-top: 24px;
}

.bam-demo-btn {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    font-weight: 700;
    color: #111827;
    text-decoration: underline;
}

/* Tap to pay on white */
.wtc-payment-amount {
    font-family: var(--font-mono);
    font-size: 3rem;
    font-weight: 900;
    color: #111827;
    margin: 16px 0 8px;
}

.wtc-payment-desc {
    font-size: 0.88rem;
    color: #6B7280;
    margin-bottom: 24px;
}

.btn-bp-action {
    width: 100%;
    padding: 16px;
    background: #111827;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 0.95rem;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-bp-action:hover {
    background: #000000;
}

.wtc-feedback {
    margin-top: 14px;
    padding: 12px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: #111827;
}

/* --------------------------------------------------------------------------
   INDUSTRIES: REAL PHOTOGRAPHY ESSAY ON WHITE
   -------------------------------------------------------------------------- */
.ind-white-essay {
    background: #FFFFFF;
    padding-top: 90px;
}

.ind-white-section {
    padding: 80px 0;
    border-bottom: 1px solid #E5E7EB;
}

.ind-sec-meta {
    display: flex;
    justify-content: space-between;
    padding-bottom: 16px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 40px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #6B7280;
}

.ind-real-photo-wrap {
    position: relative;
    overflow: hidden;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
}

.ind-real-img {
    width: 100%;
    height: 540px;
    object-fit: cover;
    display: block;
}

.vertical-frame .ind-real-img {
    height: 620px;
}

.ind-photo-corner-label {
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    gap: 14px;
    padding: 6px 14px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: #111827;
    backdrop-filter: blur(8px);
}

.ind-overlaid-booking-chip {
    position: absolute;
    bottom: 30px;
    right: 30px;
    max-width: 380px;
    width: calc(100% - 60px);
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid #E5E7EB;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    padding: 20px;
    backdrop-filter: blur(12px);
}

.obc-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #E5E7EB;
}

.obc-dot {
    width: 7px;
    height: 7px;
    background: #111827;
    border-radius: 50%;
}

.obc-title {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    letter-spacing: 0.12em;
    color: #6B7280;
    flex: 1;
}

.obc-time {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    font-weight: 700;
    color: #111827;
}

.obc-client-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 4px;
}

.obc-client-row .name {
    font-size: 1.05rem;
    font-weight: 800;
    color: #111827;
}

.obc-client-row .svc {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #4B5563;
}

.obc-detail {
    font-size: 0.8rem;
    color: #4B5563;
}

.ind-wide-caption-row {
    display: grid;
    grid-template-columns: 280px 1fr 180px;
    gap: 40px;
    padding-top: 32px;
    align-items: start;
}

.iwc-heading {
    font-size: 1.5rem;
    font-weight: 900;
    letter-spacing: -0.02em;
    color: #111827;
}

.iwc-text {
    font-size: 0.98rem;
    line-height: 1.75;
    color: #374151;
}

.iwc-spec-col {
    text-align: right;
    font-family: var(--font-mono);
    font-size: 0.75rem;
}

.iwc-spec-col .spec-k {
    color: #6B7280;
    margin-bottom: 2px;
}

.iwc-spec-col .spec-v {
    font-weight: 700;
    color: #111827;
}

/* 50% Split Composition */
.ind-split-composition {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 60px;
    align-items: center;
}

.ind-split-composition.reverse {
    grid-template-columns: 0.85fr 1.15fr;
}

.ind-title-lg {
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    color: #111827;
    margin-bottom: 16px;
}

.ind-desc-lead {
    font-size: 1.02rem;
    line-height: 1.75;
    color: #374151;
    margin-bottom: 32px;
}

/* White Ticket Dossier */
.white-ticket-dossier {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 24px;
}

.wtd-top {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.7rem;
    color: #6B7280;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 16px;
}

.wtd-main {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 14px;
}

.wtd-sub {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #6B7280;
    display: block;
    margin-bottom: 4px;
}

.wtd-pkg {
    font-size: 1.1rem;
    font-weight: 700;
    color: #111827;
}

.wtd-badge {
    background: #111827;
    color: #FFFFFF;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 4px 10px;
}

.wtd-bar {
    height: 4px;
    background: #E5E7EB;
    margin-bottom: 16px;
}

.wtd-bar .fill {
    height: 100%;
    background: #111827;
}

.wtd-meta {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    padding-top: 12px;
    border-top: 1px solid #E5E7EB;
    font-size: 0.78rem;
}

.wtd-meta .k {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #6B7280;
    display: block;
    margin-bottom: 2px;
}

.wtd-meta .v {
    font-weight: 700;
    color: #111827;
}

/* White Buffer Calc */
.white-buffer-calc {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 24px;
}

.wbc-header {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.7rem;
    color: #6B7280;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 14px;
}

.wbc-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.85rem;
}

.wbc-item .chk {
    font-weight: 900;
    color: #111827;
}

.wbc-item .name {
    flex: 1;
    color: #111827;
}

.wbc-item .val {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    color: #4B5563;
}

.wbc-summary {
    display: flex;
    justify-content: space-between;
    padding-top: 14px;
    margin-top: 6px;
    border-top: 1px solid #E5E7EB;
    font-size: 0.88rem;
    color: #111827;
}

/* White Session Stat Box */
.white-session-stat-box {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 32px;
}

.wss-tag {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    margin-bottom: 16px;
}

.wss-hero {
    display: flex;
    align-items: baseline;
    gap: 8px;
    font-family: var(--font-mono);
    margin-bottom: 10px;
}

.wss-hero .fig-big {
    font-size: 4.5rem;
    font-weight: 900;
    color: #111827;
    line-height: 1;
}

.wss-hero .slash {
    font-size: 2.8rem;
    color: #D1D5DB;
}

.wss-hero .fig-tot {
    font-size: 2.8rem;
    color: #6B7280;
}

.wss-hero .unit {
    font-size: 1.6rem;
    font-weight: 700;
    color: #111827;
}

.wss-sub {
    font-size: 0.95rem;
    color: #4B5563;
    margin-bottom: 20px;
}

.wss-alert-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 16px;
    border-top: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.78rem;
}

.wss-chip {
    background: #111827;
    color: #FFFFFF;
    padding: 4px 8px;
    font-weight: 700;
}

/* Studio White Card */
.ind-studio-white-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 40px;
}

.isw-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    margin-bottom: 40px;
}

.white-room-timeline {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 24px;
}

.wrt-head {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    margin-bottom: 14px;
}

.wrt-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.wrt-slot {
    padding: 12px;
    border-left: 2px solid #E5E7EB;
    background: #FFFFFF;
}

.wrt-slot.occupied {
    border-left-color: #111827;
    background: #F3F4F6;
}

.wrt-slot.buffer {
    opacity: 0.6;
}

.wrt-slot.open {
    border: 1px dashed #D1D5DB;
    border-left: 2px solid #9CA3AF;
}

.wrt-slot .time {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: #111827;
    display: block;
    margin-bottom: 2px;
}

.wrt-slot .desc {
    font-size: 0.75rem;
    color: #4B5563;
}

/* --------------------------------------------------------------------------
   PRICING: PAPER PRINT DOCUMENT (OFF-WHITE / NUMBER + SPACE)
   -------------------------------------------------------------------------- */
.paper-pricing-stage {
    background: #F6F5F0;
    color: #1A1A1A;
    padding: 160px 0 100px;
}

.paper-top-meta {
    display: flex;
    justify-content: space-between;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    margin-bottom: 60px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #666666;
}

.paper-poster-block {
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.15);
    padding: 50px 60px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.03);
    margin-bottom: 80px;
}

.ppb-header-line {
    display: flex;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: #333333;
    margin-bottom: 40px;
}

.ppb-sculpture-row {
    display: grid;
    grid-template-columns: 1.3fr 0.7fr;
    gap: 60px;
    align-items: center;
    padding-bottom: 60px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 50px;
}

.paper-giant-number {
    font-family: var(--font-mono);
    font-size: clamp(5.5rem, 14vw, 11rem);
    font-weight: 900;
    letter-spacing: -0.06em;
    line-height: 0.85;
    color: #111111;
}

.paper-unit {
    font-family: var(--font-mono);
    font-size: 1.6rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    color: #111111;
    margin-bottom: 20px;
}

.paper-terms-box {
    font-size: 0.92rem;
    color: #555555;
    line-height: 1.6;
    margin-bottom: 28px;
}

.btn-paper-primary {
    display: inline-block;
    padding: 16px 32px;
    background: #111111;
    color: #FFFFFF;
    font-family: var(--font-mono);
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.2s;
}

.btn-paper-primary:hover {
    background: #000000;
}

.paper-features-line {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 30px;
}

.pfl-col {
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.pfl-idx {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #888888;
    display: block;
    margin-bottom: 8px;
}

.pfl-name {
    font-size: 1.15rem;
    font-weight: 800;
    color: #111111;
    display: block;
    margin-bottom: 8px;
}

.pfl-sub {
    font-size: 0.82rem;
    line-height: 1.5;
    color: #555555;
    display: block;
}

.paper-spec-sheet {
    margin-bottom: 60px;
}

.pss-title-row {
    margin-bottom: 30px;
}

.pss-mono {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    letter-spacing: 0.14em;
    color: #666666;
    display: block;
    margin-bottom: 8px;
}

.pss-heading {
    font-size: 2rem;
    font-weight: 900;
    color: #111111;
}

.paper-spec-table {
    border-top: 1px solid rgba(0, 0, 0, 0.15);
    margin-bottom: 60px;
}

.pst-row {
    display: grid;
    grid-template-columns: 60px 220px 1fr;
    gap: 30px;
    padding: 28px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    align-items: baseline;
}

.pst-col-idx {
    font-family: var(--font-mono);
    font-size: 1rem;
    color: #888888;
}

.pst-col-label {
    font-size: 1.15rem;
    font-weight: 800;
    color: #111111;
}

.pst-col-desc {
    font-size: 0.95rem;
    line-height: 1.75;
    color: #444444;
}

.paper-cta-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px;
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.15);
}

.pcb-text strong {
    font-size: 1.15rem;
    color: #111111;
    display: block;
    margin-bottom: 6px;
}

.pcb-text span {
    font-size: 0.85rem;
    color: #666666;
}

.footer-paper-matched {
    background: #000000;
}

/* --------------------------------------------------------------------------
   RESOURCES: REAL MAGAZINE EDITORIAL SPREAD ON WHITE
   -------------------------------------------------------------------------- */
.res-white-mag-stage {
    background: #FFFFFF;
    padding: 160px 0 100px;
}

.rwm-masthead {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: baseline;
    padding-bottom: 30px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 70px;
}

.rwm-vol {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    letter-spacing: 0.16em;
    color: #6B7280;
    display: block;
    margin-bottom: 12px;
}

.rwm-heading {
    font-size: clamp(3rem, 6vw, 4.8rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    color: #111827;
}

.rwm-text {
    font-size: 1.05rem;
    line-height: 1.75;
    color: #4B5563;
}

.rwm-article-spread {
    display: grid;
    gap: 60px;
    align-items: center;
    padding-bottom: 70px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 70px;
}

.spread-photo-first {
    grid-template-columns: 1.2fr 0.8fr;
}

.spread-type-first {
    grid-template-columns: 1.15fr 0.85fr;
}

.spread-photo-and-number {
    grid-template-columns: 1fr 1fr;
}

.rwm-photo-frame {
    border: 1px solid #E5E7EB;
    background: #F9FAFB;
    overflow: hidden;
}

.rwm-real-img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    display: block;
}

.rwm-photo-caption {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    padding: 10px 14px;
    border-top: 1px solid #E5E7EB;
}

.rwm-meta-row {
    display: flex;
    gap: 16px;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    margin-bottom: 16px;
}

.rwm-article-title {
    font-size: 2rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.25;
    color: #111827;
    margin-bottom: 20px;
}

.rwm-article-excerpt {
    font-size: 0.98rem;
    line-height: 1.75;
    color: #4B5563;
    margin-bottom: 24px;
}

.rwm-doc-code {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #9CA3AF;
}

.rwm-quote-headline {
    font-size: 2.3rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.25;
    color: #111827;
    margin-bottom: 24px;
}

.rwm-thumb-frame {
    border: 1px solid #E5E7EB;
    margin-bottom: 16px;
}

.rwm-thumb-frame .rwm-real-img {
    height: 260px;
}

.rwm-thumb-stat {
    font-family: var(--font-mono);
}

.stat-num {
    font-size: 3rem;
    font-weight: 900;
    color: #111827;
    display: block;
}

.stat-lbl {
    font-size: 0.78rem;
    color: #6B7280;
}

/* Text Only Technical Index */
.rwm-text-only-section {
    padding-bottom: 70px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 70px;
}

.rtos-header {
    margin-bottom: 24px;
}

.rtos-mono {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    display: block;
    margin-bottom: 6px;
}

.rtos-title {
    font-size: 1.6rem;
    font-weight: 800;
    color: #111827;
}

.rtos-table {
    border-top: 1px solid #E5E7EB;
}

.rtos-row {
    display: grid;
    grid-template-columns: 40px 220px 1fr 120px;
    gap: 20px;
    padding: 20px 0;
    border-bottom: 1px solid #F3F4F6;
    align-items: baseline;
    font-size: 0.95rem;
}

.rtos-idx {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    color: #9CA3AF;
}

.rtos-cat {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.rtos-heading {
    font-weight: 700;
    color: #111827;
}

.rtos-date {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #9CA3AF;
    text-align: right;
}

.rwm-hero-stat-number {
    font-family: var(--font-mono);
    font-size: 4.8rem;
    font-weight: 900;
    color: #111827;
    line-height: 1;
    margin-bottom: 12px;
}

.rwm-stat-title {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111827;
    margin-bottom: 14px;
}

/* --------------------------------------------------------------------------
   CONTACT: DRAMATIC DARK QUESTIONNAIRE (LET'S TALK.)
   -------------------------------------------------------------------------- */
.page-dark-editorial {
    background: #0A0A0A;
    color: #FFFFFF;
}

.dark-contact-stage {
    padding: 180px 0 140px;
}

.narrow-contact-container {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 30px;
}

.dc-top-mono {
    display: flex;
    justify-content: space-between;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    margin-bottom: 40px;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.5);
}

.dc-main-talk {
    font-family: var(--font-mono);
    font-size: clamp(3rem, 7vw, 5.5rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1;
    margin-bottom: 16px;
    color: #FFFFFF;
}

.dc-sub-talk {
    font-size: 1.05rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 60px;
}

.dc-form-item {
    margin-bottom: 40px;
}

.dc-item-lbl-row {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 14px;
}

.dc-item-lbl-row .idx {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.4);
}

.dc-item-lbl-row .lbl-en {
    font-family: var(--font-mono);
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}

.dc-item-lbl-row .lbl-kr {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
}

.dc-underline-input {
    width: 100%;
    padding: 12px 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    color: #FFFFFF;
    font-size: 1.1rem;
    font-family: var(--font-sans);
    outline: none;
    transition: border-color 0.2s;
}

.dc-underline-input:focus {
    border-bottom-color: #FFFFFF;
}

.dc-underline-textarea {
    width: 100%;
    padding: 12px 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    color: #FFFFFF;
    font-size: 1rem;
    font-family: var(--font-sans);
    outline: none;
    resize: vertical;
}

.dc-pills-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.dc-dual-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.dc-action-row {
    margin-top: 50px;
    display: flex;
    align-items: center;
    gap: 30px;
}

.btn-dc-send {
    padding: 18px 48px;
    background: #FFFFFF;
    color: #000000;
    font-family: var(--font-mono);
    font-size: 0.95rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-dc-send:hover {
    background: #E5E5E5;
}

.dc-note {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.5;
}

/* --------------------------------------------------------------------------
   LOGIN: WHITE ASYMMETRIC MINIMALIST PAGE
   -------------------------------------------------------------------------- */
.login-white-page {
    background: #FFFFFF;
    color: #111111;
    min-height: 100vh;
}

.login-white-shell {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
    padding: 40px 60px;
    box-sizing: border-box;
}

.login-white-topbar,
.login-white-footer {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.lw-back-link {
    color: #111111;
    text-decoration: none;
    font-weight: 700;
}

.login-white-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    max-width: 1100px;
    margin: 40px auto;
    width: 100%;
}

.lw-brand-title {
    font-family: var(--font-mono);
    font-size: 1.8rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}

.lw-glyph {
    width: 16px;
    height: 16px;
    background: #111111;
}

.lw-brand-tagline {
    font-size: 1.15rem;
    line-height: 1.6;
    color: #4B5563;
    margin-bottom: 36px;
}

.lw-security-note {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #9CA3AF;
    line-height: 1.6;
}

.lw-heading {
    font-family: var(--font-mono);
    font-size: 2.4rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    margin-bottom: 32px;
}

.lw-field-group {
    margin-bottom: 24px;
}

.lw-label {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    color: #6B7280;
    display: block;
    margin-bottom: 6px;
}

.lw-line-input {
    width: 100%;
    padding: 12px 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid #D1D5DB;
    font-family: var(--font-mono);
    font-size: 1rem;
    color: #111111;
    outline: none;
    transition: border-color 0.2s;
}

.lw-line-input:focus {
    border-bottom-color: #000000;
}

.btn-lw-enter {
    width: 100%;
    padding: 16px;
    background: #111111;
    color: #FFFFFF;
    font-family: var(--font-mono);
    font-size: 0.95rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
    margin-top: 10px;
}

.btn-lw-enter:hover {
    background: #000000;
}

.lw-demo-action {
    margin-top: 20px;
    text-align: center;
}

.lw-demo-link {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #4B5563;
    text-decoration: underline;
}

.lw-register-link {
    margin-top: 32px;
    padding-top: 20px;
    border-top: 1px solid #E5E7EB;
    font-size: 0.82rem;
    color: #6B7280;
}

.lw-register-link a {
    color: #111111;
    font-weight: 700;
    text-decoration: underline;
    margin-left: 6px;
}

/* --------------------------------------------------------------------------
   ADMIN: FUNCTION-FIRST WHITE APPLICATION CONSOLE
   -------------------------------------------------------------------------- */
.admin-light-page {
    background: #F9FAFB;
    color: #111827;
    margin: 0;
    font-family: var(--font-sans);
}

.admin-light-shell {
    display: flex;
    min-height: 100vh;
}

.admin-light-sidebar {
    width: 250px;
    background: #FFFFFF;
    border-right: 1px solid #E5E7EB;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-shrink: 0;
}

.als-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px;
    border-bottom: 1px solid #F3F4F6;
}

.als-logo {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-mono);
    font-size: 0.9rem;
    font-weight: 900;
    color: #111827;
    text-decoration: none;
}

.als-glyph {
    width: 10px;
    height: 10px;
    background: #111827;
}

.als-live-badge {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #16A34A;
    font-weight: 700;
}

.als-store-box {
    padding: 16px 24px;
    border-bottom: 1px solid #F3F4F6;
}

.als-store-box .store-lbl {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    color: #9CA3AF;
    margin-bottom: 4px;
}

.als-store-box .store-name {
    font-size: 0.85rem;
    font-weight: 700;
    color: #111827;
}

.als-nav {
    display: flex;
    flex-direction: column;
    padding: 12px 14px;
    flex: 1;
}

.als-link {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    font-size: 0.85rem;
    color: #4B5563;
    text-decoration: none;
    border-radius: 4px;
    transition: background 0.15s, color 0.15s;
}

.als-link:hover,
.als-link.active {
    background: #F3F4F6;
    color: #111827;
    font-weight: 700;
}

.als-link .icon {
    font-size: 0.95rem;
    width: 16px;
    text-align: center;
}

.als-footer {
    padding: 20px 24px;
    border-top: 1px solid #F3F4F6;
}

.als-user-box .role {
    font-family: var(--font-mono);
    font-size: 0.65rem;
    color: #9CA3AF;
    margin-bottom: 2px;
}

.als-user-box .name {
    font-size: 0.85rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.als-action-links {
    display: flex;
    justify-content: space-between;
    font-size: 0.75rem;
}

.als-action-links a {
    color: #6B7280;
    text-decoration: none;
}

.als-action-links a:hover {
    color: #111827;
}

/* Admin Main Light */
.admin-light-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}

.alm-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 36px;
    background: #FFFFFF;
    border-bottom: 1px solid #E5E7EB;
}

.alm-date-chip {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #4B5563;
    margin-right: 14px;
}

.alm-time-mono {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    font-weight: 700;
    color: #111827;
    margin-right: 14px;
}

.alm-status {
    font-size: 0.75rem;
    color: #16A34A;
    font-weight: 600;
}

.alm-actions-col {
    display: flex;
    gap: 12px;
}

.btn-alm-secondary {
    padding: 9px 16px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    font-size: 0.82rem;
    font-weight: 600;
    color: #111827;
    cursor: pointer;
}

.btn-alm-primary {
    padding: 9px 18px;
    background: #111827;
    border: none;
    font-size: 0.82rem;
    font-weight: 700;
    color: #FFFFFF;
    cursor: pointer;
}

.alm-content {
    padding: 36px;
    flex: 1;
}

.alm-kpi-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
    margin-bottom: 32px;
}

.alm-kpi-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 22px;
}

.alm-kpi-card.hero-kpi {
    border-left: 3px solid #111827;
}

.alm-kpi-card.revenue-kpi {
    border-left: 3px solid #2563EB;
}

.kpi-tag {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    letter-spacing: 0.12em;
    color: #6B7280;
    margin-bottom: 8px;
}

.kpi-num {
    font-family: var(--font-mono);
    font-size: 2rem;
    font-weight: 900;
    color: #111827;
    margin-bottom: 4px;
}

.kpi-num .unit {
    font-size: 1rem;
    margin-left: 4px;
    font-weight: 700;
}

.kpi-sub {
    font-size: 0.78rem;
    color: #6B7280;
    margin-bottom: 10px;
}

.kpi-status {
    font-size: 0.74rem;
    color: #6B7280;
}

.kpi-status.green {
    color: #16A34A;
    font-weight: 600;
}

/* Split Timetable & Data */
.alm-split-row {
    display: grid;
    grid-template-columns: 1.35fr 0.65fr;
    gap: 24px;
    margin-bottom: 32px;
}

.alm-timetable-box {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 28px;
}

.alm-box-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid #E5E7EB;
}

.box-tag {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #6B7280;
    display: block;
    margin-bottom: 4px;
}

.box-title {
    font-size: 1.25rem;
    font-weight: 800;
    color: #111827;
}

.box-badge {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.cal-head-row {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: #6B7280;
    margin-bottom: 12px;
}

.cal-body-row {
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr 1fr;
    gap: 12px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.85rem;
}

.cal-body-row.active-now {
    background: #F9FAFB;
    padding: 12px 8px;
}

.cell-t {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    color: #6B7280;
}

.cell-booking {
    padding: 8px 10px;
    border-left: 2px solid #E5E7EB;
    font-size: 0.82rem;
    line-height: 1.4;
}

.cell-booking.done {
    border-left-color: #9CA3AF;
    background: #F9FAFB;
}

.cell-booking.live {
    border-left-color: #2563EB;
    background: #EFF6FF;
}

.cell-booking.upcoming {
    border-left-color: #111827;
    background: #F9FAFB;
}

.cell-booking .pill {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 0.65rem;
    padding: 2px 6px;
    background: #DBEAFE;
    color: #1E40AF;
    margin-top: 4px;
}

.cell-booking .pill-alt {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 0.65rem;
    padding: 2px 6px;
    background: #E5E7EB;
    color: #374151;
    margin-top: 4px;
}

.cell-empty {
    color: #9CA3AF;
    font-style: italic;
    font-size: 0.8rem;
}

/* Sidebar Data Cards */
.alm-data-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 24px;
    margin-bottom: 24px;
}

.adc-head {
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #F3F4F6;
}

.adc-tag {
    font-family: var(--font-mono);
    font-size: 0.68rem;
    color: #6B7280;
    display: block;
    margin-bottom: 4px;
}

.adc-title {
    font-size: 1.05rem;
    font-weight: 800;
    color: #111827;
}

.adc-lines .line {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #F9FAFB;
    font-size: 0.85rem;
}

.adc-lines .line.deduction {
    color: #DC2626;
}

.adc-lines .line.total {
    border-top: 1px solid #E5E7EB;
    padding-top: 12px;
    margin-top: 6px;
    font-weight: 700;
}

.total-val {
    font-size: 1.15rem;
    color: #111827;
}

.btn-alm-report {
    width: 100%;
    margin-top: 16px;
    padding: 10px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    color: #111827;
    cursor: pointer;
}

.btn-alm-report:hover {
    background: #F3F4F6;
}

.recall-item {
    padding: 10px 0;
    border-bottom: 1px solid #F3F4F6;
    font-size: 0.82rem;
}

.ri-name {
    font-weight: 700;
    color: #111827;
    margin-bottom: 2px;
}

.ri-text {
    color: #6B7280;
    margin-bottom: 4px;
}

.ri-badge {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.ri-badge.green {
    color: #16A34A;
}

.adc-foot {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    padding-top: 12px;
}

/* Directory Table */
.alm-table-section {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 28px;
}

.alm-search-input {
    padding: 8px 14px;
    border: 1px solid #D1D5DB;
    font-size: 0.82rem;
    width: 280px;
    outline: none;
}

.alm-table-wrap {
    overflow-x: auto;
}

.alm-data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.alm-data-table th {
    text-align: left;
    padding: 12px 10px;
    border-bottom: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.alm-data-table td {
    padding: 14px 10px;
    border-bottom: 1px solid #F3F4F6;
}

.alm-data-table .mono {
    font-family: var(--font-mono);
    font-size: 0.8rem;
    color: #4B5563;
}

.tag-vip {
    display: inline-block;
    padding: 2px 6px;
    background: #111827;
    color: #FFFFFF;
    font-size: 0.65rem;
    font-weight: 700;
}

.tag-reg {
    display: inline-block;
    padding: 2px 6px;
    background: #E5E7EB;
    color: #374151;
    font-size: 0.65rem;
}

.pill-done {
    color: #16A34A;
    font-weight: 700;
}

.pill-wait {
    color: #2563EB;
}

.pill-live {
    color: #EA580C;
    font-weight: 700;
}

.btn-chart-sm {
    padding: 4px 8px;
    background: #F3F4F6;
    border: 1px solid #D1D5DB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    cursor: pointer;
}

.btn-chart-sm:hover {
    background: #E5E7EB;
}

/* Responsive Media Queries */
@media (max-width: 1100px) {
    .draft-hero-grid,
    .bp-node-row,
    .bp-node-row.reverse,
    .bam-grid,
    .ind-wide-caption-row,
    .ind-split-composition,
    .ind-split-composition.reverse,
    .ppb-sculpture-row,
    .spread-photo-first,
    .spread-type-first,
    .spread-photo-and-number,
    .login-white-split,
    .alm-split-row {
        grid-template-columns: 1fr;
    }
    .alm-kpi-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .paper-features-line {
        grid-template-columns: repeat(2, 1fr);
    }
    .rtos-row {
        grid-template-columns: 30px 1fr;
    }
    .rtos-cat,
    .rtos-date {
        display: none;
    }
}

@media (max-width: 768px) {
    .admin-light-shell {
        flex-direction: column;
    }
    .admin-light-sidebar {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #E5E7EB;
    }
    .alm-topbar {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 16px;
    }
    .alm-content {
        padding: 16px;
    }
    .alm-kpi-grid {
        grid-template-columns: 1fr;
    }
    .paper-features-line {
        grid-template-columns: 1fr;
    }
    .pst-row {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .paper-cta-box {
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
    }
    .ind-overlaid-booking-chip {
        position: static;
        width: 100%;
        margin-top: 14px;
    }
    .dc-dual-row {
        grid-template-columns: 1fr;
    }
    .dc-action-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    .btn-dc-send {
        width: 100%;
    }
    .login-white-shell {
        padding: 24px;
    }
}

/* ==========================================================================
   25. HOME EDITORIAL BUSINESS TECHNOLOGY SUITE (LIGHT/DARK RHYTHM)
   ========================================================================== */
.home-sec-white {
    background: #FFFFFF;
    padding: 120px 0;
    border-bottom: 1px solid #E5E7EB;
}

.home-meta-tag {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    letter-spacing: 0.16em;
    color: #6B7280;
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    padding-bottom: 12px;
    border-bottom: 1px solid #E5E7EB;
}

.home-manifesto-grid {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    gap: 60px;
    align-items: center;
}

.home-headline-manifesto {
    font-family: var(--font-sans);
    font-size: clamp(2.4rem, 5vw, 3.8rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.1;
    margin-bottom: 28px;
    color: #111827;
}

.home-stagger-lines {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 32px;
}

.home-stagger-line {
    font-size: 1.18rem;
    font-weight: 600;
    color: #4B5563;
    line-height: 1.5;
}

.home-stagger-line.indent-1 {
    padding-left: 20px;
    color: #374151;
}

.home-stagger-line.indent-2 {
    padding-left: 40px;
    color: #111827;
}

.home-statement-card {
    padding: 24px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-left: 3px solid #111827;
}

.home-statement-card p {
    margin: 0;
    font-size: 1.05rem;
    line-height: 1.6;
    color: #1F2937;
    font-weight: 500;
}

.home-chip-pipeline {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    padding: 24px;
}

.hcp-header {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: #6B7280;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
}

.hcp-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.hcp-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.78rem;
}

.hcp-item .k {
    color: #4B5563;
}

.hcp-item .v {
    font-weight: 700;
    color: #111827;
}

.hcp-item .v.active {
    color: #059669;
}

/* Home Section 3: Photography + Reservation Data */
.home-sec-photo {
    background: #FAFAFA;
    padding: 110px 0;
    border-bottom: 1px solid #E5E7EB;
}

.home-photo-layout {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    gap: 40px;
    align-items: stretch;
}

.home-photo-canvas {
    position: relative;
    background: #E5E7EB;
    border: 1px solid #D1D5DB;
    overflow: hidden;
}

.home-photo-canvas img {
    width: 100%;
    height: 100%;
    min-height: 480px;
    object-fit: cover;
    display: block;
}

.home-photo-tag-top {
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    gap: 12px;
    padding: 6px 14px;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    font-weight: 700;
    color: #111827;
    backdrop-filter: blur(8px);
}

.home-photo-overlay-chip {
    position: absolute;
    bottom: 24px;
    right: 24px;
    max-width: 360px;
    width: calc(100% - 48px);
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid #E5E7EB;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    padding: 16px 20px;
    backdrop-filter: blur(10px);
}

.hpoc-hdr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 0.68rem;
    font-weight: 700;
    color: #6B7280;
    margin-bottom: 8px;
}

.hpoc-client {
    font-size: 0.95rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 4px;
}

.hpoc-svc {
    font-size: 0.8rem;
    color: #4B5563;
}

.home-booking-feed-box {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    padding: 28px;
    display: flex;
    flex-direction: column;
}

.hbf-title {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #111827;
    padding-bottom: 12px;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 16px;
    display: flex;
    justify-content: space-between;
}

.hbf-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}

.hbf-card {
    padding: 14px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.hbf-card.active-slot {
    background: #FFFFFF;
    border: 1px solid #111827;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.hbf-meta {
    display: flex;
    justify-content: space-between;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
}

.hbf-card.active-slot .hbf-meta {
    color: #059669;
    font-weight: 700;
}

.hbf-client-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.hbf-name {
    font-weight: 700;
    font-size: 0.92rem;
    color: #111827;
}

.hbf-price {
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 0.88rem;
    color: #111827;
}

.hbf-svc-name {
    font-size: 0.78rem;
    color: #4B5563;
}

.hbf-footer-sync {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #6B7280;
    display: flex;
    justify-content: space-between;
}

/* Home Section 4: Giant Numbers */
.home-sec-numbers {
    background: #FFFFFF;
    padding: 120px 0;
    border-bottom: 1px solid #E5E7EB;
}

.home-numbers-header {
    margin-bottom: 50px;
}

.home-numbers-title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 900;
    letter-spacing: -0.03em;
    color: #111827;
    margin-top: 12px;
}

.home-numbers-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border: 1px solid #E5E7EB;
    background: #FFFFFF;
}

.h-number-card {
    padding: 36px 28px;
    border-right: 1px solid #E5E7EB;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.h-number-card:last-child {
    border-right: none;
}

.h-num-giant {
    font-family: var(--font-mono);
    font-size: clamp(2.8rem, 4.5vw, 4.2rem);
    font-weight: 900;
    letter-spacing: -0.05em;
    color: #111827;
    line-height: 1;
    margin-bottom: 16px;
}

.h-num-label {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: #4B5563;
    margin-bottom: 10px;
}

.h-num-desc {
    font-size: 0.84rem;
    line-height: 1.6;
    color: #6B7280;
    margin: 0;
}

/* Home Section 5: Real Dashboard Showcase */
.home-sec-dashboard {
    background: #F9FAFB;
    padding: 120px 0;
    border-bottom: 1px solid #E5E7EB;
}

.h-dash-window {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.05);
}

.h-dash-chrome {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    background: #FFFFFF;
    border-bottom: 1px solid #E5E7EB;
}

.h-dash-dots {
    display: flex;
    gap: 8px;
}

.h-dash-dot {
    width: 9px;
    height: 9px;
    background: #111827;
}

.h-dash-dot.outline {
    background: transparent;
    border: 1px solid #111827;
}

.h-dash-title {
    font-family: var(--font-mono);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #111827;
}

.h-dash-status {
    font-family: var(--font-mono);
    font-size: 0.72rem;
    color: #059669;
}

.h-dash-body {
    padding: 36px;
}

.h-dash-grid {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    gap: 36px;
}

.h-dash-timetable-side {
    border-right: 1px solid #E5E7EB;
    padding-right: 36px;
}

.h-dash-side-title {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #111827;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid #E5E7EB;
    display: flex;
    justify-content: space-between;
}

.h-dash-table {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.h-dash-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 14px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    font-size: 0.88rem;
}

.h-dash-row.active {
    background: #FFFFFF;
    border: 1px solid #111827;
}

.h-dash-row .hdr-time {
    font-family: var(--font-mono);
    font-size: 0.78rem;
    font-weight: 700;
    color: #6B7280;
    width: 70px;
}

.h-dash-row .hdr-client {
    flex: 1;
    font-weight: 600;
    color: #111827;
}

.h-dash-row .hdr-price {
    font-family: var(--font-mono);
    font-weight: 700;
    color: #111827;
}

.h-dash-row .hdr-badge {
    font-size: 0.72rem;
    padding: 3px 8px;
    background: #E5E7EB;
    color: #111827;
}

.h-dash-row.active .hdr-badge {
    background: #111827;
    color: #FFFFFF;
}

/* Dashboard POS side */
.h-dash-pos-side {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.h-pos-metric-box {
    padding: 24px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    margin-bottom: 24px;
}

.h-pos-lbl {
    font-family: var(--font-mono);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #6B7280;
    margin-bottom: 6px;
    display: block;
}

.h-pos-giant {
    font-family: var(--font-mono);
    font-size: 2.4rem;
    font-weight: 900;
    letter-spacing: -0.04em;
    color: #111827;
    margin-bottom: 8px;
}

.h-pos-sub {
    font-size: 0.8rem;
    color: #4B5563;
}

.h-pos-breakdown {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 24px;
}

.hpb-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.82rem;
    padding: 6px 0;
    border-bottom: 1px solid #F3F4F6;
    color: #4B5563;
}

.hpb-row strong {
    color: #111827;
}

.btn-home-tap {
    width: 100%;
    padding: 16px;
    background: #111827;
    color: #FFFFFF;
    font-family: var(--font-sans);
    font-weight: 700;
    font-size: 0.95rem;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
    text-align: center;
}

.btn-home-tap:hover {
    background: #000000;
}

.home-tap-feedback {
    margin-top: 10px;
    padding: 10px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    font-family: var(--font-mono);
    font-size: 0.76rem;
    color: #111827;
    display: none;
}

/* Home Section 6: Dark CTA */
.home-sec-dark-cta {
    background: #0A0A0A;
    color: #FFFFFF;
    padding: 140px 0 160px;
}

.h-dark-cta-lead {
    font-family: var(--font-mono);
    font-size: 0.75rem;
    letter-spacing: 0.16em;
    color: #9CA3AF;
    margin-bottom: 24px;
    display: block;
}

.h-dark-cta-title {
    font-size: clamp(2.6rem, 5.5vw, 4.4rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.1;
    color: #FFFFFF;
    margin-bottom: 36px;
}

.h-dark-cta-brand {
    display: block;
    color: #FFFFFF;
    text-decoration: underline;
    text-underline-offset: 8px;
}

.h-dark-actions-row {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 30px;
}

.btn-h-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 18px 36px;
    background: #FFFFFF;
    color: #000000;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: background 0.2s, transform 0.15s;
}

.btn-h-cta-primary:hover {
    background: #E5E7EB;
    transform: translateY(-2px);
}

.btn-h-cta-outline {
    display: inline-flex;
    align-items: center;
    padding: 18px 32px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #FFFFFF;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: border-color 0.2s, background 0.2s;
}

.btn-h-cta-outline:hover {
    border-color: #FFFFFF;
    background: rgba(255, 255, 255, 0.05);
}

.h-dark-guarantee {
    font-family: var(--font-mono);
    font-size: 0.76rem;
    color: #9CA3AF;
}

/* Responsive for Home Sections */
@media (max-width: 1100px) {
    .home-manifesto-grid,
    .home-photo-layout,
    .h-dash-grid {
        grid-template-columns: 1fr;
    }
    .home-numbers-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .h-number-card {
        border-bottom: 1px solid #E5E7EB;
    }
    .h-dash-timetable-side {
        border-right: none;
        padding-right: 0;
        border-bottom: 1px solid #E5E7EB;
        padding-bottom: 30px;
    }
}

@media (max-width: 768px) {
    .home-numbers-grid {
        grid-template-columns: 1fr;
    }
    .home-photo-canvas img {
        min-height: 320px;
    }
    .h-dark-actions-row {
        flex-direction: column;
        align-items: stretch;
    }
    .btn-h-cta-primary,
    .btn-h-cta-outline {
        justify-content: center;
    }
}

/* ==========================================================================
   26. UNIFIED EDITORIAL FOOTER (4-COLUMN HIERARCHICAL SYSTEM)
   ========================================================================== */
.b10-unified-footer {
    background: #0A0A0A;
    color: #FFFFFF;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding: 90px 0 44px;
    width: 100%;
}

.footer-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
}

.footer-main-grid {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 64px;
    padding-bottom: 60px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.footer-brand-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer-wireframe-wrap {
    width: 110px;
    height: 110px;
    margin-bottom: 6px;
}

.footer-wireframe-canvas {
    width: 100%;
    height: 100%;
    display: block;
}

.footer-brand-title {
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: -0.04em;
    color: #FFFFFF;
    line-height: 1;
}

.footer-brand-desc {
    font-family: var(--font-mono);
    font-size: 0.76rem;
    line-height: 1.65;
    letter-spacing: 0.12em;
    color: rgba(255, 255, 255, 0.55);
    text-transform: uppercase;
}

.footer-links-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.footer-col {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.footer-col-title {
    font-family: var(--font-mono);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    color: rgba(255, 255, 255, 0.95);
    text-transform: uppercase;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.footer-col-nav {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-col-nav a {
    font-size: 0.86rem;
    color: rgba(255, 255, 255, 0.65);
    text-decoration: none;
    line-height: 1.45;
    transition: color 0.15s ease, transform 0.15s ease;
    display: block;
}

.footer-col-nav a:hover {
    color: #FFFFFF;
    transform: translateX(2px);
}

/* Legal Row */
.footer-legal-row {
    padding-top: 34px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 0.74rem;
    color: rgba(255, 255, 255, 0.45);
}

.footer-copy-left {
    letter-spacing: 0.04em;
}

.footer-legal-right {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.footer-legal-right a {
    color: rgba(255, 255, 255, 0.45);
    text-decoration: none;
    transition: color 0.15s ease;
}

.footer-legal-right a:hover {
    color: #FFFFFF;
}

.legal-sep {
    color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 1024px) {
    .footer-main-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }
    .footer-links-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 36px;
    }
}

@media (max-width: 768px) {
    .b10-unified-footer {
        padding: 60px 0 40px;
    }
    .footer-container {
        padding: 0 20px;
    }
    .footer-links-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .footer-legal-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
}


