        /* Security: Hide body until auth completes */
        body {
            padding: 24px;
            display: none;
            max-width: 100%;
            overflow-x: hidden;
        }

        .page-contract,
        .access-summary,
        .source-freshness {
            margin-bottom: 24px;
            border: 1px solid #dbe3ee;
            background: #ffffff;
            border-radius: 8px;
            box-shadow: 0 1px 3px rgba(17, 24, 39, 0.05);
        }

        .page-contract {
            padding: 18px 20px;
            border-left: 4px solid var(--metric-green);
        }

        .page-contract h2,
        .section-heading {
            margin: 0 0 8px 0;
            color: var(--text-primary);
            font-size: 18px;
            font-weight: 700;
        }

        .page-contract p,
        .source-freshness p {
            margin: 0;
            color: var(--text-secondary);
            line-height: 1.6;
        }

        .access-summary {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            overflow: hidden;
        }

        .access-summary .section-heading {
            grid-column: 1 / -1;
            padding: 14px 16px;
            margin: 0;
            border-bottom: 1px solid var(--border-color);
        }

        .access-summary > div {
            padding: 14px 16px;
            border-right: 1px solid var(--border-color);
        }

        .access-summary > div:last-child {
            border-right: 0;
        }

        .access-label,
        .source-label {
            display: block;
            margin-bottom: 6px;
            color: var(--transcend-blue);
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .source-freshness {
            padding: 14px 16px;
            border-left: 4px solid var(--warning-amber);
        }

        .comments-empty-help {
            color: var(--text-secondary);
            font-size: 12px;
            margin-top: 8px;
        }

        /* Color variables - aligned with Transcend Design System (shared/styles.css) */
        :root {
            /* Use standard Transcend variables from shared/styles.css */
        }

        /* Page Header */
        .page-title-bar {
            background: white;
            border-radius: 12px;
            padding: 20px 24px;
            border: 1px solid var(--border-color);
            margin-bottom: 24px;
        }

        .page-title {
            font-size: 1.5rem;
            font-weight: 700;
            color: var(--text-primary);
            margin-bottom: 8px;
        }

        .page-meta {
            display: flex;
            gap: 16px;
            font-size: 13px;
            color: var(--text-secondary);
            align-items: center;
        }

        .badge {
            background: var(--transcend-light);
            color: var(--transcend-blue);
            padding: 4px 12px;
            border-radius: 20px;
            font-weight: 600;
            font-size: 12px;
        }

        /* Back link */
        .warrant-back-link {
            display: inline-block;
            color: var(--transcend-blue);
            text-decoration: none;
            font-size: 0.9rem;
            margin-bottom: 16px;
        }

        .warrant-back-link:hover {
            text-decoration: underline;
        }

        /* Concept Box - Transcend light style */
        .concept-box {
            background: var(--transcend-light);
            color: var(--text-primary);
            border-radius: 12px;
            padding: 24px;
            margin-bottom: 24px;
            border: 1px solid var(--transcend-blue);
        }

        .concept-box h2 {
            color: var(--transcend-blue);
            font-size: 1.1rem;
            margin-bottom: 12px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .concept-box p {
            color: var(--text-secondary);
            line-height: 1.6;
        }

        /* Sections */
        .section {
            background: white;
            border-radius: 16px;
            padding: 24px;
            margin-bottom: 24px;
            box-shadow: var(--shadow-sm);
            border: 1px solid var(--border-color);
        }

        .section h3 {
            font-size: 1.1rem;
            font-weight: 600;
            color: var(--text-primary);
            margin-bottom: 16px;
            padding-bottom: 12px;
            border-bottom: 1px solid var(--border-color);
        }

        /* Grid */
        .grid-2 {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 24px;
        }

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

        @media (max-width: 900px) {
            .grid-2, .grid-3 { grid-template-columns: 1fr; }
            .grid-5 { grid-template-columns: repeat(2, 1fr); }
        }

        @media (max-width: 600px) {
            .grid-5 { grid-template-columns: 1fr; }
        }

        /* Compact deal term sheet on smaller screens */
        @media (max-width: 900px) {
            #dealTermSheet { font-size: 0.75rem; padding: 12px; }
        }
        @media (max-width: 600px) {
            #dealTermSheet > div:nth-child(2) { grid-template-columns: 1fr; gap: 4px; }
        }

        /* 5-column grid for summary results */
        .grid-5 {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 16px;
        }

        /* Input Groups */
        .input-group {
            margin-bottom: 20px;
        }

        .input-group label {
            display: block;
            color: var(--text-primary);
            font-size: 0.85rem;
            font-weight: 500;
            margin-bottom: 8px;
        }

        .input-group input[type="range"] {
            width: 100%;
            height: 6px;
            border-radius: 3px;
            background: var(--border-color);
            outline: none;
            -webkit-appearance: none;
        }

        .input-group input[type="range"]::-webkit-slider-thumb {
            -webkit-appearance: none;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            background: var(--transcend-blue);
            cursor: pointer;
        }

        /* Firefox slider styles */
        .input-group input[type="range"]::-moz-range-thumb {
            width: 18px;
            height: 18px;
            border-radius: 50%;
            background: var(--transcend-blue);
            cursor: pointer;
            border: none;
        }

        .input-group input[type="range"]::-moz-range-track {
            height: 6px;
            border-radius: 3px;
            background: var(--border-color);
        }

        .input-group select {
            width: 100%;
            padding: 10px 12px;
            border: 1px solid var(--border-color);
            border-radius: 8px;
            font-size: 0.9rem;
            background: white;
            color: var(--text-primary);
        }

        .input-value {
            display: flex;
            justify-content: space-between;
            margin-top: 6px;
            font-size: 0.85rem;
            color: var(--text-secondary);
        }

        .input-value .current {
            color: var(--transcend-blue);
            font-weight: 600;
        }

        /* Warrant Tiers */
        .tier {
            display: flex;
            align-items: center;
            margin-bottom: 12px;
            padding: 14px 16px;
            background: var(--bg-primary);
            border-radius: 8px;
            border-left: 4px solid var(--border-color);
            transition: all 0.2s ease;
        }

        .tier.unlocked {
            border-left-color: var(--metric-green);
            background: var(--green-light);
        }

        .tier.partial {
            border-left-color: var(--warning-amber);
            background: var(--amber-light);
        }

        .tier-info {
            flex: 1;
        }

        .tier-name {
            font-weight: 600;
            color: var(--text-primary);
            margin-bottom: 2px;
        }

        .tier-requirement {
            font-size: 0.8rem;
            color: var(--text-secondary);
        }

        .tier-value {
            text-align: right;
        }

        .tier-warrants {
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--transcend-blue);
        }

        .tier-dollars {
            font-size: 0.8rem;
            color: var(--text-secondary);
        }

        /* Result Cards */
        .result-card {
            background: var(--bg-primary);
            border-radius: 12px;
            padding: 20px;
            text-align: center;
            border: 1px solid var(--border-color);
        }

        .result-card.highlight {
            background: var(--transcend-light);
            border-color: var(--transcend-blue);
        }

        .result-card.positive {
            background: var(--green-light);
            border-color: var(--metric-green);
        }

        .result-card.negative {
            background: var(--red-light);
            border-color: var(--danger-red);
        }

        .result-label {
            font-size: 0.8rem;
            color: var(--text-secondary);
            margin-bottom: 8px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .result-value {
            font-size: 1.6rem;
            font-weight: 700;
            color: var(--text-primary);
        }

        .result-card.highlight .result-value {
            color: var(--transcend-blue);
        }

        .result-card.positive .result-value {
            color: var(--metric-green);
        }

        .result-card.negative .result-value {
            color: var(--danger-red);
        }

        .result-subtext {
            font-size: 0.75rem;
            color: var(--text-secondary);
            margin-top: 4px;
        }

        /* Comparison Table */
        .comparison-table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 16px;
            font-size: 0.9rem;
        }

        .table-scroll {
            overflow-x: auto;
        }

        .comparison-table th {
            text-align: left;
            padding: 12px;
            background: var(--transcend-blue);
            color: white;
            font-weight: 600;
            font-size: 0.85rem;
        }

        .comparison-table td {
            padding: 12px;
            border-bottom: 1px solid var(--bg-secondary);
        }

        .comparison-table tr:hover td {
            background: var(--bg-primary);
        }

        .comparison-table tr.total-row td {
            font-weight: 700;
            background: var(--transcend-light);
            border-top: 2px solid var(--transcend-blue);
        }

        .scenario-conservative { color: var(--danger-red); }
        .scenario-moderate { color: var(--warning-amber); }
        .scenario-aggressive { color: var(--metric-green); }

        /* Math Box */
        .math-box {
            background: var(--text-primary);
            border-radius: 8px;
            padding: 16px;
            margin: 16px 0;
            font-family: 'SF Mono', Monaco, monospace;
            font-size: 0.85rem;
        }

        .math-line {
            margin-bottom: 6px;
            color: #8b949e;
        }

        .math-line .highlight {
            color: var(--transcend-blue);
        }

        .math-line .value {
            color: #ffd93d;
        }

        /* Incentive Flow */
        .incentive-flow {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 20px;
            background: var(--bg-primary);
            border-radius: 8px;
            margin: 16px 0;
            flex-wrap: wrap;
            gap: 16px;
        }

        .flow-step {
            text-align: center;
            flex: 1;
            min-width: 120px;
        }

        .flow-icon {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: var(--transcend-light);
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 8px;
            font-size: 1.2rem;
            color: var(--transcend-blue);
            font-weight: 700;
        }

        .flow-text {
            font-size: 0.8rem;
            color: var(--text-secondary);
        }

        .flow-arrow {
            color: var(--transcend-blue);
            font-size: 1.2rem;
        }

        /* Combined View Cards */
        .combined-view {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 20px;
            margin: 24px 0;
        }

        @media (max-width: 900px) {
            .combined-view { grid-template-columns: 1fr; }
        }

        .combined-card {
            background: white;
            border-radius: 12px;
            padding: 24px;
            border: 2px solid var(--border-color);
        }

        .combined-card.give-up {
            border-color: var(--danger-red);
        }

        .combined-card.gain {
            border-color: var(--metric-green);
        }

        .combined-card.net {
            border-color: var(--transcend-blue);
            background: var(--transcend-light);
        }

        .combined-card h4 {
            font-size: 0.85rem;
            color: var(--text-secondary);
            margin-bottom: 8px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .combined-card .amount {
            font-size: 1.8rem;
            font-weight: 700;
            margin-bottom: 12px;
        }

        .combined-card.give-up .amount { color: var(--danger-red); }
        .combined-card.gain .amount { color: var(--metric-green); }
        .combined-card.net .amount { color: var(--transcend-blue); }

        .combined-card .breakdown {
            font-size: 0.85rem;
            color: var(--text-secondary);
        }

        .combined-card .breakdown div {
            padding: 4px 0;
            display: flex;
            justify-content: space-between;
        }

        /* Footer */
        .warrant-footer {
            text-align: center;
            padding: 40px 20px;
            color: var(--text-secondary);
            font-size: 0.85rem;
            border-top: 1px solid var(--border-color);
            margin-top: 40px;
        }

        /* Hidden helper */
        .hidden {
            display: none !important;
        }

        @media (max-width: 768px) {
            body {
                padding: 12px;
            }

            .access-summary {
                grid-template-columns: 1fr;
            }

            .access-summary > div {
                border-right: 0;
                border-bottom: 1px solid var(--border-color);
            }

            .access-summary > div:last-child {
                border-bottom: 0;
            }

            .warrant-inline-002 {
                position: static;
                margin: 0 0 24px 0;
                padding: 12px;
            }

            .table-scroll .comparison-table {
                min-width: 760px;
            }

            .section {
                padding: 18px;
            }

            #commentsToggle.comments-toggle {
                right: 16px;
                bottom: 16px;
            }
        }

/* Generated from former inline styles during page-excellence cleanup. */
.warrant-inline-001 { margin-top: 12px; font-size: 14px; color: var(--text-secondary); }
.warrant-inline-002 { position: sticky; top: 0; z-index: 100; background: white; padding: 16px 0 20px 0; margin: 0 -24px; padding-left: 24px; padding-right: 24px; border-bottom: 1px solid var(--border-color); margin-bottom: 24px; }
.warrant-inline-003 { display: flex; align-items: center; justify-content: center; gap: 24px; margin-bottom: 16px; flex-wrap: wrap; }
.warrant-inline-004 { text-align: center; padding: 10px 20px; background: var(--bg-primary); border-radius: 8px; border: 1px solid var(--border-color); }
.warrant-inline-005 { font-weight: 700; font-size: 1rem; color: var(--text-primary); }
.warrant-inline-006 { font-size: 0.85rem; color: var(--transcend-blue); font-weight: 500; }
.warrant-inline-007 { display: inline-block; padding: 10px 20px; border-radius: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; transition: all 0.3s ease; border: 2px solid; background: var(--transcend-light); color: var(--transcend-blue); border-color: var(--transcend-blue); }
.warrant-inline-008 { display: block; font-size: 0.9rem; }
.warrant-inline-009 { display: block; font-size: 0.7rem; font-weight: 400; margin-top: 4px; opacity: 0.8; text-transform: none; letter-spacing: normal; }
.warrant-inline-010 { padding: 14px; }
.warrant-inline-011 { font-size: 0.7rem; }
.warrant-inline-012 { font-size: 1.3rem; }
.warrant-inline-013 { margin-top: 16px; background: var(--bg-primary); border: 1px solid var(--border-color); border-radius: 8px; font-size: 0.85rem; }
.warrant-inline-014 { padding: 12px 16px; cursor: pointer; font-weight: 600; color: var(--transcend-blue); user-select: none; }
.warrant-inline-015 { font-weight: 400; color: var(--text-secondary); font-size: 0.8rem; }
.warrant-inline-016 { padding: 0 16px 16px 16px; }
.warrant-inline-017 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; margin-top: 8px; }
.warrant-inline-018 { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--border-color); color: var(--text-secondary); font-size: 0.75rem; }
.warrant-inline-019 { color: var(--metric-green); font-weight: 600; }
.warrant-inline-020 { color: var(--transcend-blue); font-weight: 600; }
.warrant-inline-021 { margin-bottom: 16px; padding: 12px; background: rgba(255,255,255,0.5); border-radius: 8px; border-left: 4px solid var(--transcend-blue); }
.warrant-inline-022 { color: var(--transcend-blue); }
.warrant-inline-023 { margin-bottom: 16px; }
.warrant-inline-024 { color: var(--metric-green); }
.warrant-inline-025 { margin-bottom: 12px; color: var(--text-secondary); font-size: 0.9rem; }
.warrant-inline-026 { width: 100%; border-collapse: collapse; }
.warrant-inline-027 { border-bottom: 1px solid var(--border-color); }
.warrant-inline-028 { padding: 8px 0; color: var(--text-secondary); }
.warrant-inline-029 { padding: 8px 0; text-align: right; color: var(--metric-green); font-weight: 500; }
.warrant-inline-030 { padding: 8px 0; text-align: right; color: var(--transcend-blue); font-weight: 500; }
.warrant-inline-031 { padding: 8px 0; text-align: right; color: #7c3aed; font-weight: 500; }
.warrant-inline-032 { margin-top: 20px; }
.warrant-inline-033 { font-size: 0.95rem; color: var(--text-primary); margin-bottom: 16px; }
.warrant-inline-034 { display: flex; justify-content: space-between; font-size: 0.7rem; color: var(--text-secondary); }
.warrant-inline-035 { text-align: center; margin-top: 4px; }
.warrant-inline-036 { font-size: 0.7rem; color: var(--text-secondary); margin-top: 4px; text-align: center; }
.warrant-inline-037 { color: var(--text-secondary); margin-bottom: 20px; }
.warrant-inline-038 { margin-top: 8px; font-size: 0.8rem; color: var(--transcend-blue); }
.warrant-inline-039 { color: var(--text-secondary); margin-bottom: 16px; }
.warrant-inline-040 { margin-top: 24px; }
.warrant-inline-041 { color: var(--text-secondary); font-size: 0.85rem; margin-bottom: 16px; }
.warrant-inline-042 { color: var(--warning-amber); }
.warrant-inline-043 { overflow-x: auto; }
.warrant-inline-044 { width: 100%; border-collapse: collapse; font-size: 0.8rem; table-layout: fixed; }
.warrant-inline-045 { background: var(--transcend-blue); color: white; }
.warrant-inline-046 { padding: 10px 8px; text-align: left; width: 55px; }
.warrant-inline-047 { padding: 10px 8px; text-align: left; width: 140px; }
.warrant-inline-048 { padding: 10px 8px; text-align: left; width: 120px; }
.warrant-inline-049 { padding: 10px 8px; text-align: center; width: 50px; }
.warrant-inline-050 { padding: 10px 8px; text-align: right; width: 90px; }
.warrant-inline-051 { padding: 10px 8px; text-align: center; width: 55px; }
.warrant-inline-052 { padding: 8px; border-bottom: 1px solid var(--border-color); color: #9333ea; font-weight: 600; }
.warrant-inline-053 { padding: 8px; border-bottom: 1px solid var(--border-color); }
.warrant-inline-054 { padding: 8px; border-bottom: 1px solid var(--border-color); text-align: center; }
.warrant-inline-055 { padding: 8px; border-bottom: 1px solid var(--border-color); text-align: right; }
.warrant-inline-056 { padding: 8px; border-bottom: 1px solid var(--border-color); text-align: center; color: var(--metric-green); font-weight: 600; }
.warrant-inline-057 { padding: 8px; border-bottom: 1px solid var(--border-color); text-align: center; color: var(--warning-amber); font-weight: 600; }
.warrant-inline-058 { background: var(--bg-primary); }
.warrant-inline-059 { padding: 8px; border-bottom: 1px solid var(--border-color); color: var(--transcend-blue); font-weight: 600; }
.warrant-inline-060 { padding: 8px; border-bottom: 1px solid var(--border-color); color: var(--metric-green); font-weight: 600; }
.warrant-inline-061 { padding: 8px; color: var(--metric-green); font-weight: 600; }
.warrant-inline-062 { padding: 8px; }
.warrant-inline-063 { padding: 8px; text-align: center; }
.warrant-inline-064 { padding: 8px; text-align: right; }
.warrant-inline-065 { padding: 8px; text-align: center; color: var(--warning-amber); font-weight: 600; }
.warrant-inline-066 { background: var(--bg-primary); border-radius: 8px; padding: 16px; margin-top: 16px; font-size: 0.85rem; color: var(--text-primary); }
.warrant-inline-067 { margin-bottom: 8px; }
.warrant-inline-068 { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--border-color); }
.warrant-inline-069 { font-size: 0.9rem; color: var(--text-primary); margin-bottom: 12px; }
.warrant-inline-070 { font-size: 0.75rem; color: var(--text-secondary); line-height: 1.8; column-count: 2; column-gap: 24px; }
.warrant-inline-071 { margin-bottom: 6px; }
.warrant-inline-072 { font-size: 0.7rem; color: var(--text-secondary); margin-top: 12px; font-style: italic; }
.warrant-inline-073 { margin-top: 8px; }

@media (max-width: 768px) {
    .grid-5 {
        grid-template-columns: 1fr;
    }

    .warrant-inline-002 {
        position: static;
        margin: 0 0 24px 0;
        padding: 12px;
    }

    .warrant-inline-017 {
        grid-template-columns: 1fr;
    }

    .warrant-inline-070 {
        column-count: 1;
    }
}
