:root {
    --itara: #3F7B67;
    --itara-strong: #2F6856;
    --forest: #12372D;
    --forest-2: #0E2C24;
    --sage: #DDE9E2;
    --sage-2: #EEF4F0;
    --ivory: #F7F6F1;
    --paper: #FFFFFF;
    --ink: #1E2823;
    --muted: #708077;
    --line: #E4E8E4;
    --amber: #B2762D;
    --amber-soft: #F8EDDD;
    --lilac: #5D5B9B;
    --lilac-soft: #ECEBFA;
    --mint-soft: #DFF2EA;
    --shadow: 0 14px 35px rgba(25, 49, 40, .065);
    --shadow-hover: 0 18px 42px rgba(25, 49, 40, .11);
    --radius: 20px;
}

* { box-sizing: border-box; }

html { background: var(--ivory); }

body {
    margin: 0;
    min-height: 100vh;
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background:
        radial-gradient(circle at 82% 0%, rgba(63,123,103,.055), transparent 28%),
        var(--ivory);
    color: var(--ink);
}

a { color: inherit; }

.shell {
    display: grid;
    grid-template-columns: 255px minmax(0, 1fr);
    min-height: 100vh;
}

.sidebar {
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
    background:
        radial-gradient(circle at 20% 5%, rgba(75,142,119,.24), transparent 30%),
        linear-gradient(180deg, var(--forest) 0%, var(--forest-2) 100%);
    color: white;
    padding: 25px 18px 20px;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(255,255,255,.04);
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 3px 7px 24px;
}

.brand-logo {
    width: 50px;
    height: 50px;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(0,0,0,.14));
}

.brand-copy strong {
    display: block;
    font-size: 20px;
    letter-spacing: .025em;
}

.brand-copy span {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,.62);
    font-size: 11px;
}

.main-nav {
    display: grid;
    gap: 5px;
}

.main-nav a,
.settings-link {
    display: grid;
    grid-template-columns: 27px 1fr auto;
    align-items: center;
    min-height: 43px;
    gap: 9px;
    padding: 9px 11px;
    border-radius: 13px;
    color: rgba(255,255,255,.76);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: .16s ease;
}

.main-nav a:hover:not(.disabled),
.main-nav a.active {
    color: white;
    background: rgba(87, 154, 131, .23);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}

.nav-icon {
    font-size: 20px;
    width: 23px;
    text-align: center;
    color: #BFD7CE;
}

.main-nav a.active .nav-icon { color: white; }

.main-nav em {
    font-style: normal;
    font-size: 9px;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: rgba(255,255,255,.32);
}

.main-nav .disabled,
.settings-link.disabled {
    cursor: default;
    opacity: .64;
}

.sidebar-bottom {
    margin-top: auto;
    border-top: 1px solid rgba(255,255,255,.10);
    padding-top: 13px;
}

.settings-link {
    grid-template-columns: 27px 1fr;
    padding-left: 11px;
}

.user-card {
    margin-top: 12px;
    padding: 13px 10px 7px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(207,232,223,.22);
    color: white;
    border: 1px solid rgba(255,255,255,.18);
    font-weight: 800;
    font-size: 12px;
}

.user-card strong, .user-card span { display: block; }
.user-card strong { font-size: 13px; }
.user-card span {
    margin-top: 2px;
    font-size: 10px;
    color: rgba(255,255,255,.55);
}

.build-label {
    padding: 8px 11px 0;
    font-size: 10px;
    color: rgba(255,255,255,.31);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.content {
    padding: 40px 42px 28px;
    min-width: 0;
    max-width: 1550px;
    width: 100%;
}

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

.eyebrow {
    margin: 0 0 6px;
    color: var(--itara);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .16em;
}

.eyebrow.light { color: rgba(255,255,255,.62); }

h1 {
    margin: 0;
    font-size: clamp(31px, 3vw, 42px);
    line-height: 1.05;
    letter-spacing: -1.6px;
}

h2 {
    margin: 2px 0 13px;
    font-size: 22px;
    line-height: 1.15;
    letter-spacing: -.6px;
}

h3 {
    margin: 8px 0 8px;
    font-size: 17px;
}

p { line-height: 1.55; }

.lead {
    margin: 12px 0 0;
    font-size: 15px;
}

.muted { color: var(--muted); }

.wave { font-size: .8em; }

.system-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border-radius: 999px;
    background: #E9F1ED;
    color: var(--forest);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.system-pill span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2D8B62;
    box-shadow: 0 0 0 4px rgba(45,139,98,.09);
}

.metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.metric-card {
    position: relative;
    min-height: 168px;
    padding: 22px;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
    overflow: hidden;
}

.metric-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-hover);
    border-color: #D5DED8;
}

.metric-icon {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 43px;
    height: 43px;
    border-radius: 13px;
    display: grid;
    place-items: center;
    font-size: 25px;
    font-weight: 700;
}

.metric-copy span,
.metric-copy strong,
.metric-copy small { display: block; }

.metric-copy span {
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.metric-copy strong {
    margin-top: 13px;
    font-size: 35px;
    line-height: 1;
    letter-spacing: -1px;
}

.metric-copy small {
    margin-top: 8px;
    color: var(--muted);
    font-size: 12px;
}

.metric-link {
    position: absolute;
    left: 22px;
    bottom: 20px;
    font-size: 12px;
    font-weight: 750;
    color: var(--itara-strong);
}

.tone-green .metric-icon,
.tone-green-bg { background: #D9EFE7; color: #21765C; }

.tone-sage .metric-icon,
.tone-sage-bg { background: #E4EEE1; color: #467549; }

.tone-amber .metric-icon,
.tone-amber-bg { background: var(--amber-soft); color: #94611F; }

.tone-lilac .metric-icon,
.tone-lilac-bg { background: var(--lilac-soft); color: #53518F; }

.tone-mint .metric-icon,
.tone-mint-bg { background: var(--mint-soft); color: #2B765F; }

.dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 18px;
    margin-bottom: 18px;
}

.panel {
    background: rgba(255,255,255,.94);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 22px;
    box-shadow: var(--shadow);
}

.panel-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
}

.text-link {
    color: var(--itara-strong);
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}

.stock-list { margin-top: 6px; }

.stock-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 15px 0;
    border-top: 1px solid var(--line);
}

.stock-row:first-child { border-top: 0; }

.stock-main {
    display: flex;
    align-items: center;
    gap: 11px;
}

.stock-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #D89A46;
    box-shadow: 0 0 0 5px rgba(216,154,70,.12);
}

.stock-main strong,
.stock-main span { display: block; }

.stock-main strong { font-size: 14px; }
.stock-main span { margin-top: 3px; color: var(--muted); font-size: 11px; }

.stock-badge {
    padding: 8px 11px;
    border-radius: 999px;
    background: #FFF0DC;
    color: #A66119;
    font-size: 11px;
    font-weight: 800;
}

.empty-state {
    display: flex;
    gap: 13px;
    align-items: center;
    padding: 18px 0 4px;
}

.empty-icon {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    display: grid;
    place-items: center;
    background: #E5F2EB;
    color: var(--itara-strong);
    font-weight: 900;
}

.empty-state p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }

.feature-panel {
    position: relative;
    overflow: hidden;
    min-height: 220px;
    border-radius: var(--radius);
    padding: 25px;
    background:
        radial-gradient(circle at 85% 30%, rgba(100,171,145,.16), transparent 34%),
        linear-gradient(135deg, #1A533F 0%, #123D30 100%);
    color: white;
    box-shadow: var(--shadow);
}

.feature-panel h2 {
    font-size: 24px;
    margin-bottom: 9px;
}

.feature-panel p {
    position: relative;
    z-index: 1;
    max-width: 530px;
    margin: 0 0 18px;
    color: rgba(255,255,255,.80);
    font-size: 14px;
}

.feature-button {
    position: relative;
    z-index: 2;
    display: inline-block;
    padding: 11px 14px;
    border-radius: 12px;
    background: rgba(255,255,255,.13);
    color: white;
    border: 1px solid rgba(255,255,255,.09);
    text-decoration: none;
    font-size: 12px;
    font-weight: 750;
}

.feature-watermark {
    position: absolute;
    right: 28px;
    bottom: 3px;
    font-size: 118px;
    line-height: 1;
    color: rgba(255,255,255,.06);
    transform: rotate(-8deg);
}

.quick-panel { margin-bottom: 18px; }

.quick-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 11px;
}

.quick-card {
    min-height: 83px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #FCFDFB;
    text-decoration: none;
    transition: .15s ease;
}

a.quick-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(29,52,44,.06);
}

.quick-icon {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    font-size: 21px;
}

.quick-card strong,
.quick-card small { display: block; }
.quick-card strong { font-size: 12px; }
.quick-card small { margin-top: 3px; color: var(--muted); font-size: 10px; }

.disabled-card { opacity: .58; }

.app-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 12px 0 2px;
    color: #7A877F;
    font-size: 11px;
}

.app-footer img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

/* Shared cards and forms for all existing pages */
.card {
    background: rgba(255,255,255,.94);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 22px;
    box-shadow: var(--shadow);
}

.cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.grid.two {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 18px;
    margin-bottom: 18px;
}

.section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
}

.badge,
.pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    background: var(--sage-2);
    color: var(--itara-strong);
    font-size: 11px;
    font-weight: 800;
}

.badge.warn {
    background: #FFF0DC;
    color: #A66119;
}

.accent-card {
    background: linear-gradient(135deg, #1A533F 0%, #123D30 100%);
    color: white;
    border-color: transparent;
}

.accent-card .eyebrow,
.accent-card .muted { color: rgba(255,255,255,.65); }

.list { display: grid; gap: 4px; }

.list-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 14px 0;
    border-top: 1px solid var(--line);
}

.list-row:first-child { border-top: 0; }

.list-row strong,
.list-row span { display: block; }

.list-row div span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 11px;
}

.form-grid {
    display: grid;
    gap: 11px;
}

input, textarea, select, button {
    width: 100%;
    min-height: 43px;
    padding: 11px 13px;
    border: 1px solid #DDE4DE;
    border-radius: 12px;
    background: #FCFDFB;
    color: var(--ink);
    font: inherit;
}

textarea {
    min-height: 100px;
    resize: vertical;
}

input:focus, textarea:focus, select:focus {
    outline: none;
    border-color: #9ABBAF;
    box-shadow: 0 0 0 3px rgba(63,123,103,.10);
}

button, .button {
    border: 0;
    background: var(--itara);
    color: white;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    font-weight: 750;
    transition: .15s ease;
}

button:hover, .button:hover { background: var(--itara-strong); }

button.secondary,
.button.secondary {
    background: #EDF1EE;
    color: var(--ink);
}

.button.ghost {
    display: inline-block;
    width: auto;
    margin-top: 9px;
    padding: 10px 13px;
    border-radius: 11px;
    background: rgba(255,255,255,.14);
}

.split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.table-wrap {
    overflow-x: auto;
    border-radius: 13px;
}

table {
    width: 100%;
    border-collapse: collapse;
}

th, td {
    padding: 13px 11px;
    border-bottom: 1px solid var(--line);
    text-align: left;
    white-space: nowrap;
}

th {
    color: var(--muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

tbody tr:hover { background: #FAFCFA; }

.recipe-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.small { font-size: 12px; }

.candidate-list { display: grid; gap: 16px; }

.candidate {
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 17px;
    background: #FCFDFB;
}

.excerpt {
    max-height: 360px;
    overflow: auto;
    padding: 14px;
    white-space: pre-wrap;
    word-break: break-word;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #F4F7F4;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 12px;
    line-height: 1.5;
}

.actions {
    display: flex;
    gap: 10px;
    margin-top: 12px;
}

.actions form { flex: 0 0 auto; }
.actions button { width: auto; }

@media (max-width: 1250px) {
    .metric-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .quick-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 920px) {
    .shell { grid-template-columns: 1fr; }
    .sidebar {
        position: static;
        height: auto;
    }
    .sidebar-bottom { display: none; }
    .main-nav {
        display: flex;
        overflow-x: auto;
        padding-bottom: 3px;
    }
    .main-nav a {
        min-width: max-content;
        grid-template-columns: 24px auto;
    }
    .main-nav em { display: none; }
    .content { padding: 25px 20px; }
    .metric-grid,
    .dashboard-grid,
    .grid.two,
    .cards,
    .recipe-cards { grid-template-columns: 1fr 1fr; }
    .quick-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 590px) {
    .brand { padding-bottom: 16px; }
    .topbar { display: block; }
    .system-pill { margin-top: 16px; }
    .metric-grid,
    .dashboard-grid,
    .grid.two,
    .cards,
    .recipe-cards,
    .quick-grid { grid-template-columns: 1fr; }
    .content { padding: 22px 14px; }
    h1 { font-size: 32px; }
}


.harvest-metrics .metric-card { min-height: 150px; }
.moon-phase-small { font-size: 20px !important; max-width: 150px; line-height: 1.1 !important; }

.crop-chip-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 10px;
}
.crop-chip {
    border: 1px solid var(--line);
    border-radius: 15px;
    padding: 14px;
    background: #F8FBF8;
}
.crop-chip strong, .crop-chip small, .crop-chip em { display: block; }
.crop-chip strong { margin-top: 8px; }
.crop-chip small { color: var(--muted); margin-top: 3px; }
.crop-chip em { font-style: normal; margin-top: 9px; font-size: 11px; color: var(--itara-strong); }
.plant-type {
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 999px;
    background: #E6F0EA;
    color: var(--itara-strong);
    font-size: 10px;
    font-weight: 800;
}
.harvest-chip { background: #FFF9EF; }

.moon-panel { margin-bottom: 18px; }
.moon-note { color: var(--muted); font-size: 12px; margin-top: 0; }
.moon-scroll {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 188px;
    gap: 10px;
    overflow-x: auto;
    padding: 6px 2px 10px;
}
.moon-day {
    min-height: 220px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #FBFCFA;
}
.moon-day.good { background: #F2F8F4; border-color: #D8E7DD; }
.moon-day.highlight { background: #FFF8E8; border-color: #EFE0B7; }
.moon-date {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.moon-date span { font-size: 28px; }
.moon-phase { margin-top: 8px; font-size: 11px; color: var(--muted); }
.moon-focus { margin-top: 11px; font-weight: 800; font-size: 13px; }
.moon-group { margin-top: 4px; font-size: 11px; color: var(--itara-strong); }
.moon-day ul { margin: 12px 0 0; padding-left: 17px; color: var(--muted); font-size: 11px; line-height: 1.5; }

label {
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
}


/* Build 0.4.1 — grouped navigation */
.grouped-nav {
    display: grid;
    gap: 7px;
}

.nav-home {
    margin-bottom: 4px;
}

.nav-group {
    border-radius: 14px;
    overflow: hidden;
}

.nav-group-title {
    width: 100%;
    min-height: 43px;
    display: grid;
    grid-template-columns: 27px 1fr 20px;
    align-items: center;
    gap: 9px;
    padding: 9px 11px;
    border: 0;
    border-radius: 13px;
    background: transparent;
    color: rgba(255,255,255,.82);
    text-align: left;
    cursor: pointer;
    font-size: 14px;
    font-weight: 750;
}

.nav-group-title:hover,
.nav-group-title.open {
    background: rgba(87,154,131,.12);
    color: white;
}

.nav-chevron {
    font-size: 14px;
    text-align: center;
    opacity: .55;
    transition: transform .15s ease;
}

.nav-group.collapsed .nav-chevron {
    transform: rotate(-90deg);
}

.nav-submenu {
    display: grid;
    gap: 2px;
    padding: 3px 0 5px 37px;
}

.nav-group.collapsed .nav-submenu {
    display: none;
}

.nav-submenu a {
    min-height: 32px;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 9px;
    color: rgba(255,255,255,.58);
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
}

.nav-submenu a:hover:not(.disabled),
.nav-submenu a.active {
    color: white;
    background: rgba(255,255,255,.075);
}

.nav-submenu a.active {
    color: #D9EEE6;
    box-shadow: inset 2px 0 0 #74AF99;
}

.nav-submenu em {
    font-style: normal;
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: rgba(255,255,255,.28);
}

.nav-submenu a.disabled {
    cursor: default;
    opacity: .62;
}

@media (max-width: 920px) {
    .grouped-nav {
        display: grid;
    }
    .nav-group-title {
        min-width: 170px;
    }
}


/* Build 0.4.2 — simplified navigation + calendar views */
.calendar-open-btn {
    display: inline-flex;
    margin-top: 7px;
    color: var(--itara-strong);
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
}

.calendar-topbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.back-link {
    display: inline-block;
    margin-bottom: 14px;
    color: var(--muted);
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
}

.calendar-type-switch,
.view-switch {
    display: inline-flex;
    gap: 5px;
    padding: 5px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: white;
}

.calendar-type-switch a,
.view-switch a {
    padding: 8px 11px;
    border-radius: 10px;
    color: var(--muted);
    text-decoration: none;
    font-size: 12px;
    font-weight: 750;
}

.calendar-type-switch a.active,
.view-switch a.active {
    background: var(--itara);
    color: white;
}

.calendar-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 18px;
    padding: 13px 16px;
}

.period-nav {
    display: flex;
    align-items: center;
    gap: 14px;
}

.period-nav a {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: var(--sage-2);
    color: var(--itara-strong);
    text-decoration: none;
    font-weight: 900;
}

.calendar-month { padding: 0; overflow: hidden; }

.weekday-row {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background: #F4F7F4;
    border-bottom: 1px solid var(--line);
}

.weekday-row span {
    padding: 12px;
    text-align: center;
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.month-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

.calendar-day {
    min-height: 145px;
    padding: 9px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: white;
}

.calendar-day:nth-child(7n) { border-right: 0; }
.calendar-day.outside { background: #FAFBF9; opacity: .45; }
.calendar-day.today { box-shadow: inset 0 0 0 2px var(--itara); }

.day-number {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
}

.calendar-day.today .day-number {
    background: var(--itara);
    color: white;
}

.day-events { display: grid; gap: 5px; margin-top: 5px; }

.cal-event {
    display: grid;
    gap: 2px;
    padding: 6px 7px;
    border-radius: 9px;
    background: #EFF6F2;
    border-left: 3px solid var(--itara);
}

.cal-event strong { font-size: 10px; }
.cal-event span { font-size: 9px; color: var(--muted); }
.cal-event small { font-size: 8px; color: var(--itara-strong); }

.cal-event.harvest,
.cal-event.actual,
.cal-event.expected {
    background: #FFF5E8;
    border-left-color: #C98A36;
}

.cal-event.moon {
    background: #F0EFFA;
    border-left-color: #6962A4;
}

.cal-event.planned {
    background: #EAF3FA;
    border-left-color: #4C82A3;
}

.more-events {
    font-size: 9px;
    color: var(--muted);
    padding: 2px 5px;
}

.week-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0,1fr));
    gap: 10px;
}

.week-day { min-height: 420px; padding: 14px; }
.today-card { box-shadow: inset 0 0 0 2px var(--itara), var(--shadow); }
.week-date { margin-bottom: 12px; }
.week-date span, .week-date strong { display: block; }
.week-date span { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.week-date strong { margin-top: 3px; font-size: 18px; }
.week-day .cal-event { margin-bottom: 8px; }

.day-view { min-height: 500px; }
.day-view-events { display: grid; gap: 12px; max-width: 850px; }
.cal-event.large { padding: 14px; }
.cal-event.large strong { font-size: 16px; }
.cal-event.large span { font-size: 12px; }
.cal-event.large small { font-size: 11px; }
.cal-event.large ul { margin: 8px 0 0 18px; color: var(--muted); font-size: 12px; }

.year-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 14px;
}

.year-month {
    min-height: 140px;
    text-decoration: none;
}
.year-month span, .year-month strong, .year-month small { display: block; }
.year-month span { color: var(--muted); font-size: 11px; text-transform: uppercase; }
.year-month strong { margin-top: 14px; font-size: 32px; }
.year-month small { margin-top: 6px; color: var(--muted); }

.moon-calendar-note {
    margin-top: 16px;
    padding: 12px 14px;
    border-radius: 12px;
    background: #F1F0FA;
    color: #67617E;
    font-size: 11px;
}

@media (max-width: 1200px) {
    .week-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .year-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 760px) {
    .calendar-topbar,
    .calendar-toolbar { display: block; }
    .calendar-type-switch,
    .view-switch { margin-top: 12px; }
    .month-grid { min-width: 900px; }
    .calendar-month { overflow-x: auto; }
    .week-grid,
    .year-grid { grid-template-columns: 1fr; }
}


/* Build 0.4.3 — 4-day operational dashboard */
.operations-panel {
    margin-bottom: 18px;
}

.operations-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.operations-subtitle {
    margin: 4px 0 0;
    font-size: 12px;
}

.operations-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

.small-button {
    width: auto;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 11px;
    border-radius: 10px;
    font-size: 11px;
}

.upcoming-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    border: 1px solid var(--line);
    border-radius: 17px;
    overflow: hidden;
}

.upcoming-day {
    min-height: 260px;
    background: #FCFDFB;
    border-right: 1px solid var(--line);
}

.upcoming-day:last-child {
    border-right: 0;
}

.upcoming-day.today-column {
    background: #F5FAF7;
}

.upcoming-day-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    padding: 12px 13px;
    border-bottom: 1px solid var(--line);
}

.upcoming-day-head strong,
.upcoming-day-head span {
    display: block;
}

.upcoming-day-head strong {
    font-size: 13px;
}

.upcoming-day-head div > span {
    margin-top: 2px;
    color: var(--muted);
    font-size: 10px;
}

.event-count {
    width: 26px;
    height: 26px;
    display: grid !important;
    place-items: center;
    border-radius: 999px;
    background: #E7EFEA;
    color: var(--itara-strong);
    font-size: 10px;
    font-weight: 800;
}

.upcoming-event-list {
    display: grid;
    gap: 7px;
    padding: 9px;
}

.operation-event {
    display: grid;
    grid-template-columns: 29px 1fr;
    gap: 8px;
    padding: 9px;
    border: 1px solid #E2E9E4;
    border-radius: 12px;
    background: white;
}

.event-area-icon {
    width: 29px;
    height: 29px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: #E3F0E9;
    color: #2E755D;
    font-size: 15px;
    font-weight: 800;
}

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

.event-topline {
    display: flex;
    justify-content: space-between;
    gap: 7px;
    align-items: center;
}

.event-area {
    color: var(--itara-strong);
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.event-topline time {
    color: var(--muted);
    font-size: 9px;
    font-weight: 700;
}

.event-main > strong {
    display: block;
    margin-top: 2px;
    font-size: 11px;
    line-height: 1.25;
}

.event-meta {
    margin-top: 3px;
    color: var(--muted);
    font-size: 9px;
}

.event-main small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 9px;
    line-height: 1.3;
}

.operation-event.production .event-area-icon {
    background: #FAEDD9;
    color: #98631F;
}

.operation-event.camping .event-area-icon {
    background: #E4F0F1;
    color: #37727A;
}

.operation-event.rental .event-area-icon {
    background: #E8EDF6;
    color: #52698A;
}

.operation-event.wine .event-area-icon {
    background: #EFE6F0;
    color: #7D527A;
}

.operation-event.warehouse .event-area-icon {
    background: #EEF0E4;
    color: #667446;
}

.no-events {
    min-height: 90px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 5px;
    color: #95A29A;
    text-align: center;
}

.no-events span {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #EDF3EF;
}

.no-events p {
    margin: 0;
    font-size: 10px;
}

.event-dialog {
    width: min(620px, calc(100vw - 30px));
    border: 0;
    padding: 0;
    border-radius: 20px;
    box-shadow: 0 30px 90px rgba(12,39,30,.25);
}

.event-dialog::backdrop {
    background: rgba(9,29,23,.52);
    backdrop-filter: blur(3px);
}

.event-dialog-card {
    padding: 22px;
    background: white;
}

.dialog-head {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 14px;
}

.dialog-close {
    width: 36px;
    min-height: 36px;
    height: 36px;
    padding: 0;
    border-radius: 50%;
    background: #EDF1EE;
    color: var(--ink);
    font-size: 22px;
}

.planning-examples {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.planning-examples span {
    padding: 8px 10px;
    border-radius: 10px;
    background: var(--sage-2);
    color: var(--itara-strong);
    font-size: 11px;
    font-weight: 700;
}

.planning-list {
    display: grid;
}

.planning-row {
    display: grid;
    grid-template-columns: 85px minmax(0,1fr) 110px;
    align-items: center;
    gap: 14px;
    padding: 14px 0;
    border-top: 1px solid var(--line);
}

.planning-row:first-child {
    border-top: 0;
}

.planning-date strong,
.planning-date span,
.planning-content strong,
.planning-content small {
    display: block;
}

.planning-date strong {
    font-size: 17px;
}

.planning-date span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
}

.planning-content strong {
    margin-top: 6px;
    font-size: 13px;
}

.planning-content small {
    margin-top: 4px;
    color: var(--muted);
}

.planning-status {
    display: grid;
    justify-items: end;
    gap: 6px;
}

.planning-status > span {
    color: var(--muted);
    font-size: 10px;
}

.planning-status button {
    width: auto;
    min-height: 31px;
    padding: 6px 9px;
    font-size: 10px;
}

@media (max-width: 1150px) {
    .upcoming-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .upcoming-day:nth-child(2) {
        border-right: 0;
    }
    .upcoming-day:nth-child(-n+2) {
        border-bottom: 1px solid var(--line);
    }
}

@media (max-width: 700px) {
    .operations-head {
        display: block;
    }
    .operations-actions {
        margin-top: 12px;
    }
    .upcoming-grid {
        grid-template-columns: 1fr;
    }
    .upcoming-day {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }
    .upcoming-day:last-child {
        border-bottom: 0;
    }
    .planning-row {
        grid-template-columns: 70px 1fr;
    }
    .planning-status {
        grid-column: 2;
        justify-items: start;
    }
}


/* Build 0.5.0 — Production + Itara AI */
.production-hub-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.production-link-panel {
    min-height: 180px;
}

.production-link-panel p {
    font-size: 12px;
}

.production-stock-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 10px;
}

.production-stock-card {
    padding: 13px;
    border-radius: 13px;
    background: #F8FAF8;
    border: 1px solid var(--line);
}

.production-stock-card strong,
.production-stock-card span,
.production-stock-card b {
    display: block;
}

.production-stock-card strong {
    font-size: 12px;
}

.production-stock-card span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
}

.production-stock-card b {
    margin-top: 9px;
    color: var(--itara-strong);
    font-size: 14px;
}

.batch-list {
    display: grid;
    gap: 8px;
}

.batch-row {
    display: grid;
    grid-template-columns: 1fr 30px;
    align-items: center;
    gap: 10px;
    padding: 13px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: #FCFDFB;
    text-decoration: none;
}

.batch-row span,
.batch-row strong,
.batch-row small {
    display: block;
}

.batch-row span {
    color: var(--itara);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .07em;
}

.batch-row strong {
    margin-top: 4px;
    font-size: 13px;
}

.batch-row small {
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
}

.batch-arrow {
    color: var(--itara);
    font-size: 20px;
}

.compact-value {
    font-size: 18px !important;
    line-height: 1.15 !important;
    max-width: 180px;
}

.complete-state {
    display: grid;
    gap: 5px;
    padding: 16px;
    border-radius: 13px;
    background: #EAF4EE;
    color: var(--itara-strong);
}

.complete-state span {
    font-size: 12px;
}

.step-timeline {
    display: grid;
}

.step-row {
    display: grid;
    grid-template-columns: 38px 1fr 110px;
    gap: 12px;
    align-items: center;
    padding: 14px 0;
    border-top: 1px solid var(--line);
}

.step-row:first-child {
    border-top: 0;
}

.step-row.done {
    opacity: .6;
}

.step-number {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #E4EFE8;
    color: var(--itara-strong);
    font-size: 11px;
    font-weight: 850;
}

.step-content span,
.step-content strong,
.step-content small {
    display: block;
}

.step-content span {
    color: var(--itara);
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.step-content strong {
    margin-top: 3px;
    font-size: 13px;
}

.step-content small {
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
}

.step-status {
    display: grid;
    justify-items: end;
    gap: 5px;
}

.step-status button {
    width: auto;
    min-height: 31px;
    padding: 6px 9px;
    font-size: 10px;
}

/* Itara AI */
.itara-ai-fab {
    position: fixed;
    right: 24px;
    bottom: 22px;
    z-index: 70;
    width: auto;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 15px;
    border-radius: 999px;
    background: linear-gradient(135deg, #3F7B67, #265846);
    box-shadow: 0 14px 35px rgba(24,68,53,.25);
    color: white;
}

.itara-ai-fab span {
    font-size: 18px;
}

.itara-ai-fab strong {
    font-size: 12px;
}

.ai-backdrop {
    position: fixed;
    inset: 0;
    z-index: 79;
    background: rgba(8,27,21,.32);
    backdrop-filter: blur(2px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
}

.ai-backdrop.open {
    opacity: 1;
    pointer-events: auto;
}

.ai-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 80;
    width: min(430px, 100vw);
    height: 100vh;
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    background: #F8F9F6;
    box-shadow: -22px 0 55px rgba(18,52,41,.18);
    transform: translateX(102%);
    transition: transform .2s ease;
}

.ai-drawer.open {
    transform: translateX(0);
}

.ai-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px;
    background: linear-gradient(135deg, #123D30, #1A5944);
    color: white;
}

.ai-brand-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ai-orb {
    width: 39px;
    height: 39px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    font-size: 19px;
}

.ai-brand-row strong,
.ai-brand-row span {
    display: block;
}

.ai-brand-row strong {
    font-size: 15px;
}

.ai-brand-row span {
    margin-top: 2px;
    color: rgba(255,255,255,.62);
    font-size: 10px;
}

.ai-close {
    width: 35px;
    height: 35px;
    min-height: 35px;
    padding: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    font-size: 21px;
}

.ai-status {
    padding: 9px 16px;
    border-bottom: 1px solid var(--line);
    background: white;
    color: var(--muted);
    font-size: 10px;
}

.ai-status.online {
    color: #267457;
}

.ai-status.offline {
    color: #9B6C33;
}

.ai-messages {
    overflow-y: auto;
    padding: 16px;
    display: grid;
    align-content: start;
    gap: 10px;
}

.ai-message {
    display: flex;
}

.ai-message > div {
    max-width: 86%;
    padding: 10px 12px;
    border-radius: 14px;
    font-size: 12px;
    line-height: 1.5;
    white-space: pre-wrap;
}

.ai-message.assistant {
    justify-content: flex-start;
}

.ai-message.assistant > div {
    background: white;
    border: 1px solid var(--line);
    border-bottom-left-radius: 4px;
}

.ai-message.user {
    justify-content: flex-end;
}

.ai-message.user > div {
    background: var(--itara);
    color: white;
    border-bottom-right-radius: 4px;
}

.ai-message.typing {
    opacity: .65;
}

.ai-compose {
    padding: 12px;
    border-top: 1px solid var(--line);
    background: white;
}

.ai-compose textarea {
    min-height: 76px;
    margin-bottom: 8px;
}

@media (max-width: 1000px) {
    .production-hub-grid {
        grid-template-columns: 1fr;
    }

    .production-stock-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 650px) {
    .production-stock-grid {
        grid-template-columns: 1fr;
    }

    .step-row {
        grid-template-columns: 34px 1fr;
    }

    .step-status {
        grid-column: 2;
        justify-items: start;
    }

    .itara-ai-fab {
        right: 14px;
        bottom: 14px;
    }
}


/* Build 0.5.1 — Barcode / QR identification */
.scan-fab {
    position: fixed;
    right: 144px;
    bottom: 22px;
    z-index: 70;
    width: auto;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 15px;
    border-radius: 999px;
    background: white;
    color: var(--itara-strong);
    border: 1px solid #D8E3DD;
    box-shadow: 0 12px 30px rgba(24,68,53,.12);
}

.scan-fab span {
    font-size: 18px;
}

.scan-fab strong {
    font-size: 12px;
}

.code-mini-btn {
    width: auto;
    min-height: 31px;
    padding: 6px 9px;
    border-radius: 9px;
    background: #E7F0EB;
    color: var(--itara-strong);
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.code-mini-btn:hover {
    background: #DCEAE2;
    color: var(--forest);
}

.code-dialog {
    width: min(560px, calc(100vw - 28px));
    border: 0;
    padding: 0;
    border-radius: 20px;
    box-shadow: 0 30px 90px rgba(12,39,30,.25);
}

.code-dialog::backdrop {
    background: rgba(9,29,23,.50);
    backdrop-filter: blur(3px);
}

.code-dialog-card {
    padding: 22px;
    background: white;
}

.code-dialog-content {
    display: grid;
    gap: 14px;
}

.code-preview {
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #FAFBF9;
    text-align: center;
}

.code-label-title {
    font-size: 16px;
    font-weight: 850;
}

.code-label-subtitle {
    margin-top: 3px;
    color: var(--muted);
    font-size: 11px;
}

.barcode-preview {
    display: block;
    width: 100%;
    max-height: 120px;
    margin: 14px auto 7px;
}

.code-value {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    color: #4C5952;
    font-size: 10px;
}

.code-dialog-actions {
    display: flex;
    gap: 8px;
}

.qr-mini-row {
    display: grid;
    grid-template-columns: 64px 1fr;
    align-items: center;
    gap: 12px;
    padding: 11px;
    border-radius: 13px;
    background: #F4F7F5;
}

.qr-mini-row img {
    width: 64px;
    height: 64px;
}

.qr-mini-row strong,
.qr-mini-row span {
    display: block;
}

.qr-mini-row strong {
    font-size: 11px;
}

.qr-mini-row span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
}

.batch-header-actions,
.warehouse-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.recipe-code-row {
    margin-top: 12px;
}

.code-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 14px;
}

.code-archive-card {
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #FCFDFB;
}

.code-archive-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.code-archive-head span,
.code-archive-head strong,
.code-archive-head small {
    display: block;
}

.code-archive-head > div > span {
    color: var(--itara);
    font-size: 9px;
    text-transform: uppercase;
    font-weight: 850;
    letter-spacing: .06em;
}

.code-archive-head strong {
    margin-top: 3px;
    font-size: 13px;
}

.code-archive-head small {
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
}

.archive-barcode {
    width: 100%;
    max-height: 95px;
    margin: 12px 0 5px;
}

.code-archive-card code {
    display: block;
    font-size: 9px;
    color: var(--muted);
    overflow-wrap: anywhere;
}

@media (max-width: 1050px) {
    .code-archive-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 650px) {
    .scan-fab {
        right: 120px;
        bottom: 14px;
        padding: 10px 12px;
    }

    .scan-fab strong {
        display: none;
    }

    .code-archive-grid {
        grid-template-columns: 1fr;
    }
}


/* Build 0.6.0 — Shop + Public Website bridge */
.shop-header-actions {
    display: flex;
    gap: 8px;
}

.shop-sync-card p {
    font-size: 13px;
}

.sync-flow {
    margin: 20px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
}

.sync-flow span {
    padding: 8px 10px;
    border-radius: 10px;
    background: var(--sage-2);
    color: var(--itara-strong);
    font-size: 11px;
    font-weight: 800;
}

.sync-flow b {
    color: #9AA69F;
}

.sync-note {
    padding: 12px;
    border-radius: 12px;
    background: #F7F1E8;
    color: #7A6549;
    font-size: 11px;
    line-height: 1.5;
}

.check-grid {
    display: grid;
    gap: 8px;
}

.check-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 8px 10px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #FBFCFA;
    color: var(--ink);
}

.check-row input {
    width: 16px;
    min-height: 16px;
    height: 16px;
    margin: 0;
}

.check-row span {
    font-size: 11px;
}

.shop-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 14px;
}

.shop-product-card {
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #FCFDFB;
}

.shop-product-top {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.shop-publish-state {
    color: #958F82;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.shop-publish-state.online {
    color: #2C7A5A;
}

.shop-product-card h3 {
    margin-top: 7px;
}

.shop-product-card small {
    color: var(--muted);
}

.shop-product-card > p {
    min-height: 52px;
    color: var(--muted);
    font-size: 11px;
}

.shop-numbers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 12px;
}

.shop-numbers > div {
    padding: 10px;
    border-radius: 11px;
    background: #F4F7F4;
}

.shop-numbers span,
.shop-numbers strong {
    display: block;
}

.shop-numbers span {
    color: var(--muted);
    font-size: 9px;
}

.shop-numbers strong {
    margin-top: 4px;
    font-size: 13px;
}

.availability-pill {
    display: inline-flex;
    margin-top: 10px;
    padding: 6px 8px;
    border-radius: 999px;
    background: #F5E9E5;
    color: #965B48;
    font-size: 9px;
    font-weight: 800;
}

.availability-pill.available {
    background: #E6F2EB;
    color: #2E765A;
}

.shop-card-actions {
    display: flex;
    gap: 6px;
    margin-top: 12px;
}

.shop-card-actions form {
    flex: 1;
}

.shop-card-actions button {
    width: 100%;
    min-height: 32px;
    padding: 6px 8px;
    font-size: 9px;
}

.website-architecture {
    padding: 12px 0;
    text-align: center;
}

.architecture-node {
    width: max-content;
    min-width: 160px;
    margin: 0 auto;
    padding: 11px 16px;
    border-radius: 13px;
    background: #EDF2EF;
    color: var(--itara-strong);
    font-weight: 800;
    font-size: 12px;
}

.architecture-node.primary {
    background: var(--forest);
    color: white;
}

.architecture-arrow {
    padding: 7px;
    color: #8D9B93;
}

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

.architecture-columns span {
    padding: 9px 5px;
    border-radius: 10px;
    background: #F5F7F4;
    color: var(--muted);
    font-size: 10px;
    font-weight: 700;
}

.api-endpoint-list {
    display: grid;
    gap: 8px;
}

.api-endpoint-list a {
    display: grid;
    grid-template-columns: minmax(240px,.6fr) 1fr;
    gap: 14px;
    padding: 11px 13px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #FBFCFA;
    text-decoration: none;
}

.api-endpoint-list code {
    color: var(--itara-strong);
    font-size: 11px;
    font-weight: 800;
}

.api-endpoint-list span {
    color: var(--muted);
    font-size: 11px;
}

@media (max-width: 1000px) {
    .shop-product-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 650px) {
    .shop-header-actions {
        margin-top: 12px;
    }

    .shop-product-grid {
        grid-template-columns: 1fr;
    }

    .architecture-columns {
        grid-template-columns: repeat(2,1fr);
    }

    .api-endpoint-list a {
        grid-template-columns: 1fr;
    }
}


/* Build 0.6.1 — Website Manager */
.website-manager-actions {
    display:flex;
    gap:8px;
}
.website-manager-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-bottom:18px;
}
.manager-card { min-height:290px; }
.color-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:8px;
}
.color-grid label {
    display:grid;
    gap:5px;
}
.color-grid input[type="color"] {
    height:48px;
    padding:4px;
}
.local-site-box {
    margin-top:14px;
    padding:12px;
    border-radius:12px;
    background:#EFF5F1;
}
.local-site-box span,
.local-site-box strong,
.local-site-box small { display:block; }
.local-site-box span {
    color:var(--itara);
    font-size:9px;
    font-weight:850;
    text-transform:uppercase;
}
.local-site-box strong {
    margin-top:5px;
    font-size:12px;
}
.local-site-box small {
    margin-top:4px;
    color:var(--muted);
}
.section-manager-list { display:grid; gap:7px; }
.section-manager-row {
    display:grid;
    grid-template-columns:34px 1fr auto;
    align-items:center;
    gap:10px;
    padding:11px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#FCFDFB;
}
.section-manager-row.inactive { opacity:.48; }
.section-drag {
    color:#9AA69F;
    font-size:18px;
}
.section-info span,
.section-info strong,
.section-info small { display:block; }
.section-info span {
    color:var(--itara);
    font-size:8px;
    font-weight:850;
    text-transform:uppercase;
}
.section-info strong {
    margin-top:3px;
    font-size:12px;
}
.section-info small {
    margin-top:3px;
    color:var(--muted);
}
.section-actions {
    display:flex;
    gap:5px;
}
.section-actions form { margin:0; }
.section-actions button {
    width:auto;
    min-height:30px;
    padding:5px 8px;
    font-size:9px;
}
.public-page-list { display:grid; gap:6px; }
.public-page-list > div {
    display:grid;
    grid-template-columns:30px 1fr 1fr auto;
    gap:9px;
    align-items:center;
    padding:9px 10px;
    border-radius:10px;
    background:#F6F8F5;
}
.public-page-list span,
.public-page-list small,
.public-page-list em {
    color:var(--muted);
    font-size:10px;
}
.public-page-list em { font-style:normal; }
@media(max-width:850px){
    .website-manager-grid{grid-template-columns:1fr;}
    .color-grid{grid-template-columns:repeat(2,1fr);}
    .section-manager-row{grid-template-columns:28px 1fr;}
    .section-actions{grid-column:2;}
}


/* Build 0.6.3 — Reservations / CRM */
.reservation-list { display:grid; }
.reservation-row {
    display:grid;
    grid-template-columns:90px minmax(0,1.2fr) minmax(0,.9fr) 180px;
    gap:14px;
    align-items:center;
    padding:14px 0;
    border-top:1px solid var(--line);
}
.reservation-row:first-child { border-top:0; }
.reservation-date strong,.reservation-date span,
.reservation-main strong,.reservation-main small,
.reservation-contact span,.reservation-contact small { display:block; }
.reservation-date strong { font-size:18px; }
.reservation-date span { margin-top:3px; color:var(--muted); font-size:10px; }
.reservation-main strong { margin-top:5px; font-size:13px; }
.reservation-main small { margin-top:3px; color:var(--muted); font-size:10px; }
.reservation-contact span { font-size:11px; }
.reservation-contact small { margin-top:3px; color:var(--muted); }
.reservation-actions { display:grid; gap:6px; }
.reservation-actions select { min-height:34px; }
.reservation-actions button { min-height:32px; font-size:10px; }
@media(max-width:1000px){
    .reservation-row{grid-template-columns:75px 1fr;}
    .reservation-contact,.reservation-actions{grid-column:2;}
}


/* Build 0.6.5 — gallery admin */
.gallery-admin-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.gallery-admin-card {
    border:1px solid var(--line);
    border-radius:14px;
    overflow:hidden;
    background:#FCFDFB;
}
.gallery-admin-card img {
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
}
.gallery-admin-card > div { padding:11px; }
.gallery-admin-card strong,.gallery-admin-card span { display:block; }
.gallery-admin-card strong { font-size:12px; }
.gallery-admin-card span { margin-top:3px;color:var(--muted);font-size:10px; }
.gallery-admin-card form { margin-top:9px; }
.gallery-admin-card button { min-height:31px;font-size:10px; }
@media(max-width:1000px){.gallery-admin-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.gallery-admin-grid{grid-template-columns:1fr;}}


/* Build 0.6.7 — Settings */
.settings-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.settings-status {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 8px;
    margin-bottom:15px;
    border-radius:999px;
    background:#F4ECE5;
    color:#8A6449;
    font-size:9px;
    font-weight:800;
}
.settings-status span {
    width:7px;height:7px;border-radius:50%;background:#C58A53;
}
.settings-status.ok {
    background:#E7F2EB;
    color:#347159;
}
.settings-status.ok span { background:#2D8B62; }
.settings-link.active {
    background:rgba(87,154,131,.23);
    color:white;
}
@media(max-width:1100px){.settings-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.settings-grid{grid-template-columns:1fr;}}


/* Build 0.6.8 — Reservation calendar + visible AI images */
.availability-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px;
}
.availability-summary-card span,
.availability-summary-card strong,
.availability-summary-card small { display:block; }
.availability-summary-card span {
    color:var(--muted);
    font-size:10px;
    text-transform:uppercase;
    font-weight:800;
}
.availability-summary-card strong {
    margin-top:7px;
    font-size:28px;
}
.availability-summary-card small {
    margin-top:3px;
    color:var(--itara);
}
.booking-calendar-panel {
    padding:0;
    overflow:hidden;
    margin-bottom:18px;
}
.booking-calendar-wrap {
    overflow:auto;
    max-width:100%;
}
.booking-calendar-table {
    min-width:1500px;
    border-collapse:separate;
    border-spacing:0;
}
.booking-calendar-table th,
.booking-calendar-table td {
    padding:0;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    text-align:center;
}
.booking-calendar-table thead th {
    min-width:38px;
    height:54px;
    background:#F4F7F4;
}
.booking-calendar-table thead th span,
.booking-calendar-table thead th strong {
    display:block;
}
.booking-calendar-table thead th span {
    color:var(--muted);
    font-size:8px;
    text-transform:uppercase;
}
.booking-calendar-table thead th strong {
    margin-top:3px;
    font-size:12px;
}
.booking-calendar-table .sticky-unit {
    position:sticky;
    left:0;
    z-index:4;
    min-width:210px;
    width:210px;
    padding:8px 10px;
    text-align:left;
    background:#FBFCFA;
}
.booking-calendar-table thead .sticky-unit {
    z-index:6;
    background:#EFF3F0;
}
.unit-type {
    display:block;
    color:var(--itara);
    font-size:8px;
    text-transform:uppercase;
    font-weight:850;
}
.booking-calendar-table .sticky-unit strong {
    display:block;
    margin-top:2px;
    font-size:10px;
}
.booking-cell {
    width:38px;
    min-width:38px;
    height:38px;
}
.booking-cell.free {
    background:#F8FBF8;
}
.booking-cell.occupied {
    background:#E1EEE7;
}
.booking-cell.today-col,
.booking-calendar-table th.today-col {
    box-shadow:inset 2px 0 0 var(--itara), inset -2px 0 0 var(--itara);
}
.booking-dot {
    width:25px;
    height:25px;
    display:grid;
    place-items:center;
    margin:auto;
    border-radius:8px;
    background:var(--itara);
    color:white;
    font-size:8px;
    font-weight:850;
}
.availability-days-scroll {
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:85px;
    gap:7px;
    overflow-x:auto;
    padding-bottom:5px;
}
.availability-day-card {
    padding:10px;
    border:1px solid var(--line);
    border-radius:11px;
    background:#FBFCFA;
}
.availability-day-card.today {
    border-color:var(--itara);
    background:#EFF6F2;
}
.availability-day-card strong,
.availability-day-card span {
    display:block;
}
.availability-day-card strong {
    margin-bottom:6px;
    font-size:11px;
}
.availability-day-card span {
    color:var(--muted);
    font-size:9px;
    line-height:1.5;
}
.ai-image-manager {
    margin-bottom:18px;
    background:linear-gradient(135deg,#F6FAF7,#EEF5F1);
}
.ai-image-quick-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
}
.ai-image-quick-grid button {
    background:white;
    color:var(--itara-strong);
    border:1px solid var(--line);
    min-height:42px;
    font-size:11px;
}
@media(max-width:900px){
    .availability-summary-grid{grid-template-columns:1fr;}
    .ai-image-quick-grid{grid-template-columns:repeat(2,1fr);}
}


/* Build 0.6.9 — visible booking hub + dynamic version */
.dashboard-booking-panel {
    margin-bottom: 18px;
}

.dashboard-availability-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
}

.dashboard-avail-card {
    display: block;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #F8FBF9;
    text-decoration: none;
}

.dashboard-avail-card:hover {
    border-color: #BED7CA;
    background: #F1F7F3;
}

.dashboard-avail-card span,
.dashboard-avail-card strong,
.dashboard-avail-card small {
    display: block;
}

.dashboard-avail-card span {
    color: var(--muted);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.dashboard-avail-card strong {
    margin-top: 7px;
    color: var(--ink);
    font-size: 26px;
}

.dashboard-avail-card small {
    margin-top: 3px;
    color: var(--itara-strong);
    font-size: 10px;
}

.module-tabs {
    display: inline-flex;
    gap: 5px;
    margin: -2px 0 18px;
    padding: 5px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: white;
}

.module-tabs a {
    padding: 8px 11px;
    border-radius: 9px;
    text-decoration: none;
    color: var(--muted);
    font-size: 11px;
    font-weight: 750;
}

.module-tabs a.active,
.module-tabs a:hover {
    background: #EAF3EE;
    color: var(--itara-strong);
}

.build-label {
    text-transform: uppercase;
}

@media (max-width: 800px) {
    .dashboard-availability-grid {
        grid-template-columns: 1fr;
    }

    .module-tabs {
        display: flex;
        overflow-x: auto;
        max-width: 100%;
    }

    .module-tabs a {
        white-space: nowrap;
    }
}


/* Build 0.7.0 — actionable garden + website grouping */
.clickable-card { cursor:pointer; transition:transform .12s ease, box-shadow .12s ease; }
.clickable-card:hover { transform:translateY(-2px); box-shadow:0 14px 35px rgba(24,68,53,.10); }
.garden-crop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.garden-crop-tile { text-decoration:none; min-height:190px; }
.garden-crop-tile h2 { margin:12px 0 4px; }
.garden-crop-tile p { color:var(--muted); }
.garden-crop-tile > strong { display:block; margin-top:18px; color:var(--itara-strong); font-size:11px; }
.crop-window { display:flex; gap:7px; flex-wrap:wrap; margin-top:14px; }
.crop-window span { padding:6px 8px; border-radius:8px; background:#EEF5F1; color:var(--itara-strong); font-size:9px; font-weight:750; }
.garden-task-list { display:grid; gap:10px; }
.garden-task-row { display:grid; grid-template-columns:minmax(220px,.7fr) 1.3fr; gap:18px; align-items:center; }
.garden-task-row h2 { margin:7px 0 2px; }
.garden-task-row h2 a { color:inherit; text-decoration:none; }
.garden-task-row p { margin:0; color:var(--muted); font-size:11px; }
.garden-inline-action { display:grid; grid-template-columns:1fr 110px 120px auto; gap:7px; align-items:center; }
.garden-inline-action input,.garden-inline-action select { min-width:0; }
.garden-inline-action button { min-height:38px; white-space:nowrap; }

.website-nav-group { margin-top:1px; }
.website-nav-group .nav-group-title {
    width:100%; display:grid; grid-template-columns:27px 1fr 20px; align-items:center; gap:9px;
    min-height:43px; padding:9px 11px; border:0; border-radius:13px;
    background:transparent; color:rgba(255,255,255,.82); text-align:left; cursor:pointer;
    font-size:14px; font-weight:750;
}
.website-nav-group .nav-group-title:hover,.website-nav-group .nav-group-title.open { background:rgba(87,154,131,.12); color:white; }
.website-nav-group .nav-chevron { text-align:center; opacity:.55; }
.website-nav-group .nav-submenu { display:grid; gap:2px; padding:3px 0 5px 37px; }
.website-nav-group.collapsed .nav-submenu { display:none; }
.website-nav-group .nav-submenu a {
    min-height:31px; display:flex; align-items:center; padding:6px 10px; border-radius:9px;
    color:rgba(255,255,255,.58); text-decoration:none; font-size:11px; font-weight:650;
}
.website-nav-group .nav-submenu a:hover,.website-nav-group .nav-submenu a.active { color:white; background:rgba(255,255,255,.075); }
@media(max-width:900px){
 .garden-crop-grid{grid-template-columns:1fr 1fr;}
 .garden-task-row{grid-template-columns:1fr;}
 .garden-inline-action{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){
 .garden-crop-grid{grid-template-columns:1fr;}
 .garden-inline-action{grid-template-columns:1fr;}
}
.wine-flow{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px}.wine-flow>div{padding:12px;border-radius:12px;background:#f3f7f4;min-height:100px}.wine-flow b,.wine-flow strong,.wine-flow span,.wine-row span,.wine-row strong,.wine-row small,.wine-task span,.wine-task strong,.wine-task small{display:block}.wine-flow b{color:var(--itara);font-size:10px}.wine-flow strong{margin-top:8px;font-size:12px}.wine-flow span{margin-top:5px;color:var(--muted);font-size:9px}.wine-row{padding:11px 0;border-top:1px solid var(--line)}.wine-task{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.wine-task span,.wine-row span{color:var(--itara);font-size:9px;font-weight:800}.wine-task strong,.wine-row strong{margin-top:3px;font-size:12px}.wine-task small,.wine-row small{margin-top:3px;color:var(--muted)}.wine-task button{width:auto;min-height:31px;padding:6px 9px;font-size:10px}@media(max-width:1100px){.wine-flow{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.wine-flow{grid-template-columns:repeat(2,1fr)}}
/* Build 0.7.2 — product images */
.shop-product-image{width:100%;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#eef3ef;margin-bottom:13px}
.shop-product-image img{width:100%;height:100%;object-fit:cover;display:block}
.product-image-empty{height:100%;display:grid;place-items:center;align-content:center;gap:7px;color:#829087}
.product-image-empty span{font-size:28px}.product-image-empty strong{font-size:10px}
.product-image-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}
.product-image-actions form{margin:0}.product-image-actions button,.upload-image-button{min-height:34px;width:100%;font-size:10px}
.upload-image-button{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;background:#f7faf8;color:var(--itara-strong);font-weight:800;cursor:pointer}
.upload-image-button input{display:none}

/* Build 0.7.3 — product image creation UI */
.new-product-image-box{display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#f8faf8}
.new-product-image-preview{height:190px;border:1px dashed #cbd8d0;border-radius:11px;background:#eef4f0;display:grid;place-items:center;align-content:center;gap:5px;color:#7b8b82;overflow:hidden}
.new-product-image-preview span{font-size:30px}.new-product-image-preview strong{font-size:12px}.new-product-image-preview small{font-size:9px}
.new-product-image-preview img{width:100%;height:100%;object-fit:cover;display:block}
.new-product-image-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.new-product-image-options button,.prominent-upload{min-height:40px}

/* Build 0.7.4 — recipe library */
.recipe-library-layout{display:grid;grid-template-columns:minmax(400px,.78fr) minmax(520px,1.22fr);gap:18px;margin-bottom:18px}
.recipe-library-tree{display:grid;gap:10px;max-height:640px;overflow:auto;padding-right:4px}
.recipe-category-block{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fbfcfa}
.recipe-category-head{display:flex;justify-content:space-between;gap:10px;padding:12px;background:#eff5f1}
.recipe-category-head strong{font-size:13px}.recipe-category-head span{color:var(--muted);font-size:9px}
.recipe-subcategory{padding:10px 12px;border-top:1px solid var(--line)}
.recipe-subcategory-head span{font-size:10px;font-weight:850;color:var(--itara-strong);text-transform:uppercase}
.recipe-mini-list{display:grid;gap:5px;margin-top:7px}
.recipe-mini-list>a{display:grid;grid-template-columns:38px 1fr;gap:8px;align-items:center;padding:6px;border-radius:9px;text-decoration:none;background:#f7faf8}
.recipe-mini-list img,.recipe-mini-placeholder{width:38px;height:30px;border-radius:6px;object-fit:cover;display:grid;place-items:center;background:#e7efea;color:var(--itara)}
.recipe-mini-list strong,.recipe-mini-list small{display:block}.recipe-mini-list strong{font-size:10px}.recipe-mini-list small{color:var(--muted);font-size:8px;margin-top:2px}
.library-admin{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.library-admin summary{cursor:pointer;color:var(--itara-strong);font-size:11px;font-weight:800}
.recipe-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.recipe-library-tile{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;text-decoration:none}
.recipe-tile-image{aspect-ratio:4/3;background:#edf3ef;overflow:hidden}.recipe-tile-image img{width:100%;height:100%;object-fit:cover}.recipe-tile-image>div{height:100%;display:grid;place-items:center;align-content:center;color:#829087}.recipe-tile-image span{font-size:30px}.recipe-tile-image small{margin-top:5px}
.recipe-tile-copy{padding:12px}.recipe-tile-copy h3{margin:9px 0 5px;font-size:14px}.recipe-tile-copy p,.recipe-tile-copy small{color:var(--muted);font-size:9px}
.recipe-detail-grid{display:grid;grid-template-columns:minmax(340px,.7fr) minmax(520px,1.3fr);gap:18px;margin-bottom:18px}
.recipe-detail-image{aspect-ratio:4/3;border-radius:13px;overflow:hidden;background:#edf3ef}.recipe-detail-image img{width:100%;height:100%;object-fit:cover}
.recipe-image-empty{height:100%;display:grid;place-items:center;align-content:center;color:#819087}.recipe-image-empty span{font-size:38px}.recipe-image-empty strong{margin-top:6px}.recipe-image-empty small{margin-top:3px}
.recipe-image-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.recipe-image-actions form{margin:0}.recipe-image-actions button,.recipe-image-actions .upload-image-button{min-height:40px}
.recipe-document-upload{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin-bottom:13px}
.recipe-document-list{display:grid;gap:6px}.recipe-document-list>a,.ingredient-row{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:#fbfcfa}
.recipe-document-list strong,.recipe-document-list small{display:block}.recipe-document-list strong{font-size:10px}.recipe-document-list small{margin-top:2px;color:var(--muted);font-size:8px}.doc-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#eaf2ed;color:var(--itara)}
@media(max-width:1100px){.recipe-library-layout,.recipe-detail-grid{grid-template-columns:1fr}.recipe-card-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:750px){.recipe-card-grid{grid-template-columns:repeat(2,1fr)}.recipe-document-upload{grid-template-columns:1fr}}
@media(max-width:520px){.recipe-card-grid{grid-template-columns:1fr}}


/* Build 0.7.6 — intuitive recipe library */
.recipe-library-shell{
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
    gap:18px;
    align-items:start;
}
.recipe-sidebar{
    position:sticky;
    top:18px;
    padding:14px;
}
.recipe-sidebar-head{padding:4px 5px 12px}
.recipe-sidebar-head h2{margin:2px 0 0}
.recipe-nav-item{
    width:100%;
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px;
    align-items:center;
    padding:11px 12px;
    margin:3px 0;
    border:0;
    border-radius:11px;
    background:transparent;
    color:var(--ink);
    text-align:left;
    cursor:pointer;
}
.recipe-nav-item:hover{background:#F1F6F3}
.recipe-nav-item.active{background:#E8F2ED;color:var(--itara-strong)}
.recipe-nav-item strong,.recipe-nav-item small{display:block}
.recipe-nav-item strong{font-size:11px}
.recipe-nav-item small{margin-top:2px;color:var(--muted);font-size:8px}
.recipe-sidebar-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:5px;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid var(--line);
}
.recipe-sidebar-actions button{min-height:34px;font-size:9px}

.recipe-main{display:grid;gap:18px}
.recipe-overview{background:linear-gradient(135deg,#F8FBF9,#F0F6F2)}
.recipe-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-top:13px;
}
.recipe-stats>div{
    padding:12px;
    border:1px solid var(--line);
    border-radius:11px;
    background:white;
}
.recipe-stats span,.recipe-stats strong{display:block}
.recipe-stats span{
    color:var(--muted);
    font-size:8px;
    text-transform:uppercase;
    font-weight:800;
}
.recipe-stats strong{margin-top:5px;font-size:19px}

.recipe-subcategory-panel{overflow:hidden}
.recipe-subcategory-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
}
.recipe-subcategory-card{
    min-height:74px;
    display:grid;
    grid-template-columns:36px 1fr;
    gap:9px;
    align-items:center;
    padding:10px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#FBFCFA;
    text-align:left;
    cursor:pointer;
}
.recipe-subcategory-card:hover{border-color:#BDD6C8;background:#F3F8F5}
.recipe-subcategory-card.active{border-color:#8EBBA6;background:#EAF4EF}
.recipe-subcat-icon{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#E3EEE8;
    color:var(--itara-strong);
    font-size:16px;
}
.recipe-subcategory-card strong,.recipe-subcategory-card small{display:block}
.recipe-subcategory-card strong{font-size:10px}
.recipe-subcategory-card small{margin-top:2px;color:var(--muted);font-size:8px}

.recipe-search-box input{
    width:230px;
    min-height:36px;
    padding:8px 11px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#FBFCFA;
}

.recipe-card-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.recipe-modern-card{
    border:1px solid var(--line);
    border-radius:14px;
    overflow:hidden;
    background:white;
    box-shadow:0 8px 22px rgba(31,61,49,.035);
    transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;
}
.recipe-modern-card:hover{
    transform:translateY(-2px);
    border-color:#C0D8CC;
    box-shadow:0 15px 34px rgba(31,61,49,.08);
}
.recipe-modern-image{
    display:block;
    aspect-ratio:16/10;
    overflow:hidden;
    background:#EDF3EF;
}
.recipe-modern-image img{width:100%;height:100%;object-fit:cover;display:block}
.recipe-modern-placeholder{
    height:100%;
    display:grid;
    place-items:center;
    align-content:center;
    gap:5px;
    color:#839087;
}
.recipe-modern-placeholder span{font-size:29px}
.recipe-modern-placeholder small{font-size:8px}
.recipe-modern-body{padding:12px}
.recipe-modern-meta{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.recipe-category-chip{
    padding:4px 7px;
    border-radius:999px;
    background:#F0F3EF;
    color:#65736B;
    font-size:8px;
    font-weight:750;
}
.recipe-modern-title{
    display:block;
    margin-top:9px;
    color:var(--ink);
    font-size:14px;
    font-weight:850;
    text-decoration:none;
}
.recipe-modern-info{
    display:flex;
    gap:10px;
    margin-top:8px;
    color:var(--muted);
    font-size:8px;
}
.recipe-modern-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
    margin-top:11px;
}
.recipe-modern-actions a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:31px;
    border:1px solid var(--line);
    border-radius:8px;
    color:var(--itara-strong);
    font-size:9px;
    font-weight:800;
    text-decoration:none;
    background:#F8FAF8;
}
.recipe-modern-actions a:hover{background:#EDF5F0}
.recipe-empty-state{
    grid-column:1/-1;
    padding:45px 20px;
    text-align:center;
    color:var(--muted);
}
.recipe-empty-state span{font-size:34px}
.recipe-empty-state h3{margin:8px 0 3px;color:var(--ink)}
.recipe-dialog-wide{max-width:720px}

@media(max-width:1200px){
    .recipe-library-shell{grid-template-columns:220px minmax(0,1fr)}
    .recipe-subcategory-grid{grid-template-columns:repeat(3,1fr)}
    .recipe-card-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:850px){
    .recipe-library-shell{grid-template-columns:1fr}
    .recipe-sidebar{position:static}
    .recipe-sidebar-actions{grid-template-columns:1fr 1fr}
    .recipe-stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
    .recipe-subcategory-grid,.recipe-card-grid{grid-template-columns:1fr}
    .recipe-search-box input{width:100%}
}

.library-manage-list{display:grid;gap:6px}.library-manage-row{display:grid;grid-template-columns:55px 1fr auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:11px;background:#fbfcfa}.sort-buttons{display:grid;grid-template-columns:1fr 1fr;gap:3px}.sort-buttons form{margin:0}.sort-buttons button{min-height:29px;padding:3px;border:1px solid var(--line);background:#eef4f0;color:var(--itara-strong)}.library-name strong,.library-name small{display:block}.library-name strong{font-size:11px}.library-name small{font-size:8px;color:var(--muted)}.edit-small{min-height:31px;font-size:9px}.library-cleanup{margin-top:12px;text-align:right}.library-cleanup button{width:auto}

.recipe-structure-panel{margin-top:18px}.recipe-structure-table-wrap,.recipe-list-table-wrap{overflow:auto}.recipe-structure-table,.recipe-list-table{width:100%;border-collapse:collapse}.recipe-structure-table th,.recipe-list-table th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:8px;letter-spacing:.12em;text-transform:uppercase}.recipe-structure-table td,.recipe-list-table td{padding:11px 10px;border-bottom:1px solid var(--line);font-size:10px;vertical-align:middle}.recipe-structure-table td strong,.recipe-structure-table td small,.recipe-list-table td small{display:block}.recipe-structure-table td strong{font-size:11px}.recipe-structure-table td small,.recipe-list-table td small{margin-top:3px;color:var(--muted);font-size:8px}.sub-chip-list{display:flex;gap:5px;flex-wrap:wrap}.sub-chip{border:0;border-radius:999px;background:#eaf2ed;color:var(--itara-strong);padding:5px 8px;font-size:8px;font-weight:750;cursor:pointer}.table-sort{display:flex;gap:3px}.table-sort form{margin:0}.table-sort button{width:28px;min-height:28px;padding:2px;border:1px solid var(--line);background:#f2f6f3;color:var(--itara-strong)}.table-empty{text-align:center!important;color:var(--muted);padding:25px!important}.library-search{width:220px;min-height:35px;border:1px solid var(--line);border-radius:9px;padding:8px}.recipe-table-image{width:52px;height:40px;display:grid;place-items:center;border-radius:8px;overflow:hidden;background:#edf3ef;color:var(--itara);text-decoration:none}.recipe-table-image img{width:100%;height:100%;object-fit:cover}.recipe-table-title{font-weight:800;color:var(--ink);text-decoration:none}.table-open{color:var(--itara-strong);font-weight:800;text-decoration:none;font-size:9px}


/* Build 0.7.9 — compact recipe administration + drag/drop */
.production-nav-group .nav-group-title{
    width:100%; display:grid; grid-template-columns:27px 1fr 20px; align-items:center; gap:9px;
    min-height:43px; padding:9px 11px; border:0; border-radius:13px;
    background:transparent; color:rgba(255,255,255,.82); text-align:left; cursor:pointer;
    font-size:14px; font-weight:750;
}
.production-nav-group .nav-group-title:hover,
.production-nav-group .nav-group-title.open{background:rgba(87,154,131,.12);color:white}
.production-nav-group .nav-chevron{text-align:center;opacity:.55}
.production-nav-group .nav-submenu{display:grid;gap:2px;padding:3px 0 5px 37px}
.production-nav-group.collapsed .nav-submenu{display:none}
.production-nav-group .nav-submenu a{
    min-height:31px;display:flex;align-items:center;padding:6px 10px;border-radius:9px;
    color:rgba(255,255,255,.58);text-decoration:none;font-size:11px;font-weight:650;
}
.production-nav-group .nav-submenu a:hover,
.production-nav-group .nav-submenu a.active{color:white;background:rgba(255,255,255,.075)}

.recipe-structure-actions{display:flex;gap:6px;align-items:center}
.recipe-structure-actions form{margin:0}

.recipe-admin-list{
    display:grid;
    gap:7px;
}
.recipe-admin-category{
    display:grid;
    grid-template-columns:28px minmax(180px,.7fr) minmax(240px,1.3fr) auto;
    gap:12px;
    align-items:center;
    min-width:0;
    padding:11px 12px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#FBFCFA;
}
.recipe-admin-category.dragging{
    opacity:.5;
    border-color:#73A68E;
    box-shadow:0 8px 22px rgba(33,71,56,.12);
}
.recipe-drag-handle{
    display:grid;
    place-items:center;
    width:26px;
    height:34px;
    border-radius:8px;
    color:#A4AEA8;
    font-size:14px;
    user-select:none;
}
.recipe-admin-list:not(.ordering) .recipe-drag-handle{
    opacity:.25;
}
.recipe-admin-list.ordering .recipe-drag-handle{
    background:#E7F1EB;
    color:var(--itara-strong);
    cursor:grab;
}
.recipe-admin-list.ordering .recipe-admin-category{
    border-style:dashed;
}
.recipe-admin-main,
.recipe-admin-subs{min-width:0}
.recipe-admin-title{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
}
.recipe-admin-title strong{font-size:12px}
.recipe-admin-title span{
    padding:4px 7px;
    border-radius:999px;
    background:#EFF4F1;
    color:var(--muted);
    font-size:8px;
    font-weight:750;
}
.recipe-admin-main>small{
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:8px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.recipe-admin-subs{
    display:flex;
    gap:5px;
    flex-wrap:wrap;
}
.recipe-sub-pill{
    max-width:160px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    padding:5px 8px;
    border:0;
    border-radius:999px;
    background:#EAF2ED;
    color:var(--itara-strong);
    font-size:8px;
    font-weight:750;
    cursor:pointer;
}
.recipe-sub-pill:hover{background:#DCEBE3}
.recipe-no-sub{color:var(--muted);font-size:8px}
.recipe-admin-edit{width:auto;min-width:80px}
.recipe-order-help{
    margin-top:9px;
    padding:9px 11px;
    border-radius:10px;
    background:#EEF5F1;
    color:var(--itara-strong);
    font-size:9px;
    font-weight:700;
}
.recipe-order-help span{margin-right:6px}

.recipe-structure-table-wrap{overflow:visible}
.recipe-structure-table{table-layout:fixed}
.recipe-structure-table th:nth-child(1){width:20%}
.recipe-structure-table th:nth-child(2){width:45%}
.recipe-structure-table th:nth-child(3){width:10%}
.recipe-structure-table th:nth-child(4){width:10%}
.recipe-structure-table th:nth-child(5){width:15%}

@media(max-width:1000px){
    .recipe-admin-category{
        grid-template-columns:28px 1fr auto;
    }
    .recipe-admin-subs{
        grid-column:2 / -1;
    }
}
@media(max-width:650px){
    .recipe-admin-category{
        grid-template-columns:24px 1fr;
    }
    .recipe-admin-edit{
        grid-column:2;
        justify-self:start;
    }
    .recipe-admin-subs{grid-column:2}
}


/* Build 0.8.0 — recipe as main module + recipe codes */
.recipe-code-button{
    min-height:28px;
    padding:5px 8px;
    border:0;
    border-radius:8px;
    background:#E8F1EC;
    color:var(--itara-strong);
    font-size:8px;
    font-weight:800;
    cursor:pointer;
    white-space:nowrap;
}
.recipe-code-button:hover{background:#DCEAE2}
.recipe-header-code{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.recipe-code-value{
    padding:7px 9px;
    border-radius:9px;
    background:#EEF4F0;
    color:var(--itara-strong);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:9px;
    font-weight:700;
}


/* Build 0.8.1 — shopping list */
.shopping-head-actions{display:flex;gap:7px;align-items:center}.shopping-head-actions form{margin:0}
.shopping-list-tabs{display:flex;gap:6px;overflow:auto;margin-bottom:14px}
.shopping-list-tabs a{padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--muted);text-decoration:none;font-size:10px;font-weight:750;white-space:nowrap}
.shopping-list-tabs a.active{background:#E7F2EC;color:var(--itara-strong);border-color:#BFD7CA}
.shopping-add-panel{margin-bottom:18px}.shopping-add-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.shopping-add-form{display:grid;grid-template-columns:2fr 1.1fr .55fr .7fr 1.2fr auto;gap:6px;align-items:center}.shopping-inventory-add .shopping-add-form{grid-template-columns:2fr .6fr 1.2fr auto}
.shopping-add-form input,.shopping-add-form select,.shopping-add-form button{min-width:0}
.shopping-board{display:grid;gap:18px}.shopping-category{display:grid;gap:9px}
.shopping-category-head{display:flex;gap:7px;align-items:center}.shopping-category-head h2{margin:0;font-size:13px}.shopping-category-head span{display:grid;place-items:center;min-width:23px;height:23px;border-radius:999px;background:#E7F1EB;color:var(--itara-strong);font-size:8px;font-weight:800}
.shopping-tile-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.shopping-tile{position:relative;min-height:145px;padding:12px;border:1px solid var(--line);border-radius:14px;background:white;box-shadow:0 7px 20px rgba(31,61,49,.035)}
.shopping-check-form{position:absolute;top:8px;right:8px}.shopping-check{width:28px;height:28px;padding:0;border:0;border-radius:9px;background:#E9F2ED;color:var(--itara-strong);font-size:12px}
.shopping-tile-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#EDF4F0;color:var(--itara-strong);font-size:18px;font-weight:850}
.shopping-tile-name{margin-top:9px;font-size:12px;font-weight:850}.shopping-tile-note{min-height:18px;margin-top:3px;color:var(--muted);font-size:8px}
.shopping-qty{display:grid;grid-template-columns:30px 1fr 30px;gap:4px;align-items:center;margin-top:8px}.shopping-qty form{margin:0}.shopping-qty button{width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:8px;background:#F5F8F6;color:var(--itara-strong)}.shopping-qty strong{text-align:center;font-size:9px}
.shopping-empty{text-align:center;padding:40px}.shopping-empty span{font-size:30px;color:var(--itara)}.shopping-empty h2{margin:6px 0 3px}
.shopping-purchased{margin-top:18px}.shopping-purchased-list{display:grid;gap:5px}.shopping-purchased-list>div{display:grid;grid-template-columns:32px 1fr auto;gap:8px;align-items:center;padding:7px 9px;border-radius:9px;background:#F5F7F5;color:#8B958F}.shopping-purchased-list form{margin:0}.shopping-purchased-list button{width:28px;height:28px;padding:0}.shopping-purchased-list span{text-decoration:line-through;font-size:10px}.shopping-purchased-list small{font-size:8px}
@media(max-width:1200px){.shopping-tile-grid{grid-template-columns:repeat(4,1fr)}.shopping-add-grid{grid-template-columns:1fr}.shopping-add-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.shopping-tile-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.shopping-tile-grid{grid-template-columns:repeat(2,1fr)}.shopping-add-form,.shopping-inventory-add .shopping-add-form{grid-template-columns:1fr}}

/* Build 0.9.0 — Audio Studio */
.audio-topbar{align-items:flex-start}.audio-provider{display:flex;gap:10px;align-items:center;padding:10px 13px;border:1px solid var(--line);border-radius:13px;background:#fff}.audio-provider small,.audio-provider strong{display:block}.audio-provider small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.audio-provider strong{font-size:10px;margin-top:2px}.status-dot{width:9px;height:9px;border-radius:50%;background:#c8cec9}.status-dot.online{background:#4d9d74;box-shadow:0 0 0 4px #e6f3eb}.audio-workspace{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:22px}.audio-notice{padding:11px 14px;margin-bottom:14px;border-radius:11px;background:#fff4dc;color:#795b16;font-size:10px;font-weight:700}.audio-notice.success{background:#e8f5ed;color:#286247}.audio-key-hint{font-size:9px;margin:10px 0 0}.audio-drop{display:grid;gap:4px;padding:18px;border:1.5px dashed #b9cbc0;border-radius:12px;background:#f7faf8;cursor:pointer}.audio-drop strong{font-size:10px}.audio-drop span{font-size:8px;color:var(--muted)}.audio-drop input{margin-top:8px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.section-heading h2{margin:0}.audio-count{font-size:9px;color:var(--muted)}.audio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.audio-card{padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.audio-card-head{display:flex;justify-content:space-between;gap:8px}.audio-kind,.audio-source{font-size:8px;font-weight:800;padding:4px 7px;border-radius:999px;background:#e8f1ec;color:var(--itara-strong)}.audio-source{background:#f3f2ed;color:var(--muted)}.audio-card h3{margin:10px 0 7px;font-size:13px}.audio-card audio{width:100%;height:34px;margin:7px 0}.audio-meta{display:flex;gap:5px;flex-wrap:wrap}.audio-meta span{font-size:7px;padding:3px 6px;border-radius:6px;background:#f4f6f4;color:var(--muted)}.audio-card details{margin:9px 0;font-size:8px}.audio-card details p{line-height:1.5;color:var(--muted)}.audio-empty{text-align:center;padding:45px}.audio-empty>div{font-size:32px;color:var(--itara)}@media(max-width:1000px){.audio-workspace{grid-template-columns:1fr}.audio-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.audio-grid{grid-template-columns:1fr}.audio-provider{display:none}}

.model-hint { font-size: .82rem; color: var(--muted, #6f7d76); margin-top: -.35rem; }
.model-hint a { color: inherit; font-weight: 700; }

/* Build 0.10.0 — Podcast Audio Editor */
.editor-shell{display:grid;gap:10px}.editor-toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}.editor-toolbar button{width:auto}.editor-toolbar #timeLabel{font-size:10px;font-variant-numeric:tabular-nums}.editor-version{margin-left:auto;font-size:8px;color:var(--muted);padding:5px 8px;background:#f2f5f3;border-radius:999px}.timeline-ruler{display:flex;justify-content:space-between;margin-left:155px;padding:0 4px;color:var(--muted);font-size:7px}.track-row{display:grid;grid-template-columns:145px 1fr;min-height:110px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.track-label{padding:14px;background:#f6f8f6;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.track-label strong{font-size:10px}.track-label small{font-size:8px;color:var(--muted)}.wave-wrap{position:relative;min-width:0;padding:8px;background:linear-gradient(180deg,#fbfcfb,#f3f7f4)}.wave-wrap canvas{width:100%;height:92px}.playhead{position:absolute;top:0;bottom:0;width:2px;background:#c76c52;left:0;pointer-events:none}.music-track{min-height:72px}.music-strip{margin:13px;display:flex;align-items:center;padding:0 14px;border-radius:9px;background:linear-gradient(90deg,#dce9e2,#edf4f0);color:#3f6d59;font-size:8px;font-weight:800}.editor-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.editor-controls>div{display:grid;gap:5px}.editor-controls label{font-size:8px;font-weight:800;color:var(--muted)}.editor-controls small{font-size:7px;color:var(--muted)}.editor-controls input,.editor-controls select{min-width:0}.editor-actions{display:flex;justify-content:flex-end;gap:8px}.editor-actions button{width:auto}.editor-render{background:#315f4c;color:#fff}@media(max-width:1000px){.editor-controls{grid-template-columns:repeat(2,1fr)}.track-row{grid-template-columns:110px 1fr}.timeline-ruler{margin-left:120px}}@media(max-width:650px){.editor-controls{grid-template-columns:1fr}.track-row{grid-template-columns:1fr}.track-label{border-right:0;border-bottom:1px solid var(--line)}.timeline-ruler{margin-left:0}}

.audio-projects{margin:0 0 22px}.audio-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.audio-project-tile{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;text-decoration:none;color:inherit}.audio-project-tile strong{font-size:10px}.audio-project-tile span{font-size:8px;color:var(--muted)}@media(max-width:800px){.audio-project-grid{grid-template-columns:1fr}}

/* Build 0.11.0 — Pro Multitrack Audio Editor */
.editor-head-actions{display:flex;gap:7px}.pro-editor{display:grid;gap:14px}.pro-transport{position:sticky;top:8px;z-index:12;display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 8px 30px rgba(30,55,44,.08);backdrop-filter:blur(12px)}.pro-transport button{width:38px;height:34px;padding:0}.pro-transport #clock,.pro-transport #duration{font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace}.zoom-control{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:8px;color:var(--muted)}.zoom-control input{width:100px}.pro-timeline{--zoom:1;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#f7f9f7;padding-bottom:8px}.pro-ruler{min-width:calc(900px * var(--zoom));height:30px;margin-left:160px;padding:0 8px;display:flex;justify-content:space-between;align-items:center;color:#849089;font-size:7px;border-bottom:1px solid var(--line)}.pro-track{display:grid;grid-template-columns:160px minmax(calc(900px * var(--zoom)),1fr);min-height:82px;border-bottom:1px solid var(--line)}.pro-track:last-child{border-bottom:0}.pro-track-head{position:sticky;left:0;z-index:4;padding:12px;background:#f3f6f4;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.pro-track-head strong{font-size:10px}.pro-track-head small{font-size:7px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pro-lane{position:relative;min-width:calc(900px * var(--zoom));background-image:linear-gradient(90deg,rgba(67,103,86,.06) 1px,transparent 1px);background-size:10% 100%}.pro-lane canvas{width:100%;height:80px;display:block}.pro-playhead{position:absolute;left:0;top:0;bottom:0;width:2px;background:#c96f55;z-index:3;pointer-events:none}.pro-clip{position:absolute;top:13px;height:54px;min-width:170px;max-width:65%;padding:9px 12px;border-radius:9px;background:#dceae2;border:1px solid #bad2c4;box-shadow:0 3px 10px rgba(30,70,50,.08);overflow:hidden}.pro-clip span,.pro-clip small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pro-clip span{font-size:9px;font-weight:850}.pro-clip small{font-size:7px;margin-top:5px;color:#567264}.pro-clip.role-intro{background:#e8e3f1;border-color:#d2c5e2}.pro-clip.role-outro{background:#f0e6dc;border-color:#dfcbb8}.pro-clip.role-voice{background:#dce8f1;border-color:#bfd2e1}.pro-clip.role-sfx{background:#f1ead2;border-color:#dfd09c}.editor-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px}.editor-master label,.track-mixer label{display:grid;gap:4px;font-size:8px;font-weight:750;color:var(--muted)}.track-mixer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.track-mixer{display:grid;gap:8px}.track-mixer-title{display:flex;justify-content:space-between;gap:8px}.track-mixer-title strong{font-size:10px}.track-mixer-title span{font-size:7px;text-transform:uppercase;padding:4px 6px;border-radius:999px;background:#edf3ef;color:var(--itara-strong)}.editor-export{display:flex;justify-content:space-between;align-items:center;gap:20px}.editor-export h2{margin:2px 0 4px}.editor-export button{width:auto;min-width:210px}.track-inspector{margin-top:4px}@media(max-width:1050px){.track-mixer-grid{grid-template-columns:repeat(2,1fr)}.editor-panels{grid-template-columns:1fr}}@media(max-width:700px){.pro-ruler{margin-left:115px}.pro-track{grid-template-columns:115px minmax(calc(700px * var(--zoom)),1fr)}.track-mixer-grid{grid-template-columns:1fr}.editor-export{align-items:stretch;flex-direction:column}.editor-export button{width:100%}.zoom-control{display:none}}

/* Build 0.12.0 — Authentication & RBAC */
.auth-body{min-height:100vh;margin:0;background:radial-gradient(circle at 20% 10%,#e6f0ea,transparent 35%),#f5f6f3}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(420px,100%);padding:34px;border:1px solid var(--line);border-radius:22px;background:white;box-shadow:0 24px 70px rgba(25,55,42,.12)}.auth-logo{width:64px;height:64px;object-fit:contain;margin-bottom:14px}.auth-card h1{font-size:28px;margin:4px 0}.auth-card label{display:grid;gap:5px;font-size:9px;font-weight:800;color:var(--muted)}.user-admin-layout{display:grid;grid-template-columns:340px 1fr;gap:14px;align-items:start}.user-list{display:grid;gap:10px}.user-admin-card{display:grid;gap:12px}.user-admin-head{display:flex;justify-content:space-between;gap:10px}.user-admin-head strong,.user-admin-head span{display:block}.user-admin-head strong{font-size:12px}.user-admin-head span{font-size:8px;color:var(--muted);margin-top:3px}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#f8faf8}.permission-grid label{display:flex;gap:5px;align-items:center;font-size:8px;color:var(--ink)}.permission-grid input{width:auto}.active-check{display:flex!important;align-items:center;gap:6px!important}.active-check input{width:auto}.password-reset-row{display:grid;grid-template-columns:1fr auto;gap:7px}.password-reset-row button{width:auto}.status-pill{height:max-content;padding:4px 7px;border-radius:999px;background:#f0e5e2;color:#865748;font-size:7px;font-weight:800}.status-pill.ok{background:#e4f1e9;color:#35694f}.logout-mini{width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;background:#eef3ef!important;color:var(--itara-strong)!important}.user-card form{margin-left:auto}@media(max-width:900px){.user-admin-layout{grid-template-columns:1fr}.permission-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.permission-grid{grid-template-columns:1fr}}

/* Build 0.13.0 — Website Builder */
.builder-head-actions{display:flex;gap:8px}.website-builder-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:start}.builder-sidebar{position:sticky;top:12px;display:grid;gap:10px}.builder-page-list{display:grid;gap:4px}.builder-page-list a,.builder-tool-link{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:9px;color:var(--ink);text-decoration:none;font-size:9px}.builder-page-list a.active,.builder-page-list a:hover,.builder-tool-link:hover{background:#e9f2ed;color:var(--itara-strong)}.builder-page-list small{color:var(--muted);font-size:7px}.builder-sidebar details{border-top:1px solid var(--line);padding-top:8px}.builder-sidebar summary{font-size:9px;font-weight:800;cursor:pointer}.form-grid.compact{margin-top:8px}.builder-main{display:grid;gap:14px}.builder-blocks{display:grid;gap:9px}.builder-add-block{display:flex;gap:6px}.builder-add-block input,.builder-add-block select{min-width:120px}.builder-add-block button{width:auto}.builder-block summary{display:grid;grid-template-columns:22px 1fr auto auto;gap:8px;align-items:center;cursor:pointer}.builder-block summary strong{font-size:10px}.builder-block summary small{font-size:7px;color:var(--muted)}.builder-block form{margin-top:12px}.builder-block-actions{display:flex;gap:5px;margin-top:8px}.builder-block-actions form{margin:0}.builder-block-actions button{width:auto;min-width:38px}.builder-section{scroll-margin-top:15px}.builder-color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.builder-color-grid label{display:grid;gap:5px;font-size:8px;color:var(--muted)}.builder-color-grid input{height:42px;padding:3px}.builder-theme-upload{display:flex;gap:7px;margin:12px 0}.builder-theme-upload button{width:auto}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.theme-card{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fafcfa}.theme-card strong,.theme-card span{display:block}.theme-card strong{font-size:10px}.theme-card span,.theme-card p{font-size:7px;color:var(--muted)}.theme-card button{width:auto}.site-map-canvas{position:relative;min-height:420px;margin:12px 0;border:1px solid var(--line);border-radius:14px;background:linear-gradient(90deg,#edf3ef 1px,transparent 1px),linear-gradient(#edf3ef 1px,transparent 1px),#fafcfb;background-size:5% 5%;overflow:hidden}.map-object{position:absolute;display:grid;place-items:center;padding:5px;border:2px solid #7ca08e;border-radius:9px;background:#dcebe3;color:#315b49;font-size:8px;font-weight:800;text-align:center}.map-object.type-building{background:#e8e3db;border-color:#a99982}.map-object.type-pool{background:#dcecf2;border-color:#76a6b8}.map-object.type-road{background:#e5e5e2;border-color:#999}.builder-position-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.map-item-row{display:grid;grid-template-columns:2fr repeat(5,.6fr) auto;gap:5px;margin-top:5px}.map-item-row button{width:auto}@media(max-width:1000px){.website-builder-shell{grid-template-columns:1fr}.builder-sidebar{position:static}.theme-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.theme-grid,.builder-color-grid{grid-template-columns:1fr 1fr}.builder-add-block,.builder-theme-upload{display:grid}.map-item-row{grid-template-columns:1fr 1fr}}

/* Website domain settings */
.domain-options{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8faf8}.domain-options label{display:flex!important;align-items:center;gap:7px!important}.domain-options input{width:auto}.domain-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.domain-status-grid>div{padding:11px;border:1px solid var(--line);border-radius:10px;background:#fafcfb}.domain-status-grid span,.domain-status-grid strong{display:block}.domain-status-grid span{font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.domain-status-grid strong{font-size:9px;margin-top:4px;word-break:break-word}@media(max-width:700px){.domain-status-grid{grid-template-columns:1fr}}

/* Website Builder focus mode + media library */
.builder-shell-toggle{width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;margin-bottom:8px;background:#edf3ef!important;color:var(--itara-strong)!important;font-size:18px}.builder-focus-mode .sidebar{transform:translateX(-100%);width:0;min-width:0;overflow:hidden;padding-left:0;padding-right:0;border:0}.builder-focus-mode .shell{grid-template-columns:0 minmax(0,1fr)}.sidebar,.shell{transition:grid-template-columns .22s ease,transform .22s ease,width .22s ease}.builder-focus-mode .content{padding-left:18px}.website-builder-shell{grid-template-columns:280px minmax(0,1fr)}.builder-sidebar{min-width:0}.builder-image-picker{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:7px;align-items:center}.builder-image-picker img{grid-column:1/-1;width:100%;max-height:210px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.media-upload-box{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;padding:16px;margin:12px 0 18px;border:1px dashed #a9c0b4;border-radius:13px;background:#f8fbf9}.media-upload-box strong,.media-upload-box span{display:block}.media-upload-box strong{font-size:10px}.media-upload-box span{font-size:7px;color:var(--muted);margin-top:3px}.media-upload-box button{width:auto}.website-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.website-media-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(30,55,44,.05)}.website-media-card>img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f2f4f1}.website-media-card>div{padding:10px;display:grid;gap:6px}.website-media-card strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.website-media-card span{font-size:7px;color:var(--muted)}.website-media-card button{width:100%;font-size:8px}.website-media-card form{margin:0}@media(max-width:1100px){.website-media-grid{grid-template-columns:repeat(3,1fr)}.website-builder-shell{grid-template-columns:245px minmax(0,1fr)}}@media(max-width:750px){.website-media-grid{grid-template-columns:repeat(2,1fr)}.media-upload-box,.builder-image-picker{grid-template-columns:1fr}.website-builder-shell{grid-template-columns:1fr}}

/* Website Builder clearer focus control + direct block uploads */
.builder-title-row{display:flex;align-items:center;margin-bottom:8px}.builder-shell-toggle{width:auto!important;min-width:168px!important;height:38px!important;padding:0 12px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;background:#123f33!important;color:#fff!important;border-radius:10px!important;box-shadow:0 5px 14px rgba(20,65,51,.15)}.builder-shell-toggle .toggle-icon{font-size:17px;line-height:1}.builder-shell-toggle .toggle-label{font-size:8px;font-weight:800}.builder-image-picker{grid-template-columns:minmax(0,1fr) 210px 220px}.block-image-upload{height:100%;min-height:42px;display:flex!important;flex-direction:column;justify-content:center;gap:2px!important;padding:7px 10px;border:1px dashed #9fb9ac;border-radius:10px;background:#f8fbf9;color:var(--itara-strong)!important;cursor:pointer}.block-image-upload span{font-size:7px;font-weight:800}.block-image-upload input{font-size:7px;padding:0;border:0;background:transparent}@media(max-width:900px){.builder-image-picker{grid-template-columns:1fr}.builder-shell-toggle{min-width:145px!important}}

/* Global Itara OS sidebar collapse */
.sidebar-collapse-control{width:100%!important;min-height:34px!important;margin:7px 0 2px!important;padding:7px 10px!important;display:flex!important;align-items:center;justify-content:center;gap:7px;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.12)!important;color:rgba(255,255,255,.9)!important;border-radius:9px!important}.sidebar-collapse-control span{font-size:17px;line-height:1}.sidebar-collapse-control strong{font-size:8px}.sidebar-reopen-control{display:none;position:fixed;left:10px;top:12px;z-index:80;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border-radius:11px!important;background:#123f33!important;color:#fff!important;box-shadow:0 7px 22px rgba(12,49,38,.24);font-size:18px}.global-sidebar-collapsed .sidebar{transform:translateX(-100%);width:0;min-width:0;overflow:hidden;padding-left:0;padding-right:0;border:0}.global-sidebar-collapsed .shell{grid-template-columns:0 minmax(0,1fr)}.global-sidebar-collapsed .sidebar-reopen-control{display:grid;place-items:center}.global-sidebar-collapsed .content{padding-left:62px}.sidebar,.shell,.content{transition:grid-template-columns .22s ease,transform .22s ease,width .22s ease,padding .22s ease}

/* Website Builder advanced blocks */
.repeatable-items{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f9fbfa}.repeatable-items>strong{font-size:9px}.repeatable-item-list{display:grid;gap:5px;margin:8px 0}.repeatable-item{display:grid;grid-template-columns:55px 1fr auto;align-items:center;gap:8px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:9px}.repeatable-item img{width:55px;height:42px;object-fit:cover;border-radius:7px}.repeatable-item strong,.repeatable-item small{display:block}.repeatable-item strong{font-size:8px}.repeatable-item small{font-size:7px;color:var(--muted)}.repeatable-item form{margin:0}.repeatable-item button{width:32px!important;height:32px!important;padding:0!important}.repeatable-add{padding-top:8px;border-top:1px solid var(--line)}

/* Unified Google settings hub */
.google-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.google-service-card{display:grid;gap:10px}.service-head{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center}.service-head>span:first-child{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#e8f1ec;color:var(--itara-strong);font-size:19px}.service-head h2{margin:1px 0}.service-meta{display:grid;grid-template-columns:100px 1fr;gap:4px 8px;padding:9px;border-radius:9px;background:#f8faf8}.service-meta span{font-size:7px;color:var(--muted);text-transform:uppercase}.service-meta strong{font-size:8px;overflow-wrap:anywhere}.google-service-card>a{width:max-content}@media(max-width:800px){.google-hub-grid{grid-template-columns:1fr}}

.google-services-form{display:grid;gap:13px}.google-toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.google-toggle-grid label{display:grid;grid-template-columns:20px 1fr;gap:2px 7px;padding:11px;border:1px solid var(--line);border-radius:11px;background:#fafcfb}.google-toggle-grid input{grid-row:1/3;width:auto}.google-toggle-grid strong{font-size:9px}.google-toggle-grid span{font-size:7px;color:var(--muted)}@media(max-width:900px){.google-toggle-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.google-toggle-grid{grid-template-columns:1fr}}

/* Garden live environment dashboard */
.garden-environment-panel{margin-bottom:14px}.environment-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.environment-metrics article{padding:14px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#f7fbf8,#fff)}.environment-metrics span,.environment-metrics strong,.environment-metrics small{display:block}.environment-metrics span{font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.environment-metrics strong{font-size:20px;margin:5px 0;color:var(--itara-strong)}.environment-metrics small{font-size:7px;color:var(--muted)}.garden-env-lower{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.garden-env-lower>div{padding:12px;border-radius:11px;background:#f8faf8}.garden-env-lower h3{margin:0 0 8px}.pollen-list{display:flex;flex-wrap:wrap;gap:6px}.pollen-list span{padding:7px 9px;border-radius:999px;background:#fff;border:1px solid var(--line)}.pollen-list strong,.pollen-list em{font-size:7px}.pollen-list em{margin-left:5px;color:var(--muted);font-style:normal}.environment-notes{margin:0;padding-left:17px}.environment-notes li{font-size:8px;margin:5px 0}@media(max-width:900px){.environment-metrics{grid-template-columns:1fr 1fr}}@media(max-width:600px){.garden-env-lower,.environment-metrics{grid-template-columns:1fr}}

/* Unified review hub */
.review-source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.review-source-card{display:grid;gap:9px}.review-count{font-size:28px;color:var(--itara-strong)}.review-hub-list{display:grid;gap:7px}.review-hub-row{display:grid;grid-template-columns:85px 1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:11px}.review-source-badge{padding:5px 7px;border-radius:999px;background:#e9f2ed;color:var(--itara-strong);font-size:7px;font-weight:850;text-transform:uppercase;text-align:center}.review-hub-row strong,.review-hub-row small{display:block}.review-hub-row small{font-size:7px;color:var(--muted);margin-top:3px}.review-hub-row p{font-size:9px;line-height:1.5}.review-hub-row a{font-size:8px;color:var(--itara-strong)}.muted-review{opacity:.48}@media(max-width:950px){.review-source-grid{grid-template-columns:1fr}.review-hub-row{grid-template-columns:1fr}}

/* Coming Soon visual builder */
.coming-builder{display:grid;gap:12px}.coming-builder-head{display:flex;align-items:end;justify-content:space-between;gap:15px}.coming-builder-head h2{font-size:28px;margin:2px 0}.coming-builder-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cs-editor-card{display:grid;gap:10px}.cs-card-title{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--line)}.cs-card-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e8f1ec;color:var(--itara-strong);font-size:8px;font-weight:900}.cs-card-title h3,.cs-card-title p{margin:0}.cs-card-title p{font-size:7px;color:var(--muted);margin-top:2px}.cs-editor-card label{display:grid;gap:4px;font-size:8px;font-weight:800;color:var(--muted)}.cs-editor-card input,.cs-editor-card textarea,.cs-editor-card select{font-weight:500;color:var(--ink)}.toggle-setting{grid-template-columns:22px 1fr!important;align-items:center!important;padding:9px;border-radius:9px;background:#f6f9f7}.toggle-setting input{width:auto}.cs-image-preview{width:100%;height:190px;object-fit:cover;border-radius:12px}.cs-tile-config{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.cs-tile-config article{padding:10px;border:1px solid var(--line);border-radius:10px;background:#f9fbfa}.cs-tile-config article>span,.cs-tile-config strong{display:block}.cs-tile-config article>span{font-size:19px;color:var(--itara-strong)}.cs-tile-config strong{font-size:9px;margin:4px 0}.cs-tile-config p,.cs-tile-config a{font-size:7px;line-height:1.4}.cs-tile-config a{color:var(--itara-strong);font-weight:800}.cs-savebar{grid-column:1/-1;position:sticky;bottom:10px;z-index:5;padding:7px;border-radius:12px;background:rgba(246,248,245,.94);backdrop-filter:blur(12px);box-shadow:0 8px 25px rgba(25,55,43,.12)}.cs-savebar button{width:100%}.cs-layout-preview{margin-top:2px}.cs-wireframe{overflow:hidden;border-radius:16px;border:1px solid var(--line);background:#eef3ef}.cs-wire-hero{min-height:250px;padding:30px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(135deg,#214b3e,#779081);color:#fff}.cs-wire-hero span{font-size:7px;letter-spacing:.12em;text-transform:uppercase}.cs-wire-hero strong{font-family:Georgia,serif;font-size:32px;margin:6px 0}.cs-wire-hero small{font-size:8px}.cs-wire-tiles{display:grid;grid-template-columns:.8fr .8fr 1.4fr;gap:8px;padding:10px;margin-top:-25px;position:relative}.cs-wire-tiles>div{min-height:80px;padding:12px;border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(25,55,43,.09);font-size:18px}.cs-wire-tiles strong{display:block;font-size:9px;margin-top:8px}.cs-wire-reviews{margin:0 10px 10px;padding:13px;border-radius:11px;background:#fff;font-size:8px}@media(max-width:1000px){.coming-builder-form{grid-template-columns:1fr}.cs-savebar{grid-column:auto}}@media(max-width:650px){.cs-tile-config,.cs-wire-tiles{grid-template-columns:1fr}.coming-builder-head{align-items:start;flex-direction:column}}

/* Persistent website logo editor */
.brand-logo-editor{display:grid;grid-template-columns:1fr 230px;gap:12px;align-items:center}.brand-logo-preview{min-height:90px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#f8faf8;display:grid;place-items:center;gap:5px}.brand-logo-preview span{font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.brand-logo-preview img{max-width:190px;max-height:65px;object-fit:contain}@media(max-width:700px){.brand-logo-editor{grid-template-columns:1fr}}

.ai-copy-btn{width:max-content;padding:6px 9px!important;border:1px solid #cfe0d7!important;border-radius:999px!important;background:#eef6f1!important;color:var(--itara-strong)!important;font-size:7px!important;font-weight:850!important;box-shadow:none!important}.ai-copy-btn:disabled{opacity:.55}

.translation-workflow{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}.translation-workflow h3,.translation-workflow p{margin-top:0}.translation-workflow form{display:flex;align-items:center;gap:8px;flex-shrink:0}.translation-status{padding:6px 9px;border-radius:999px;background:#f4e9e3;color:#8b5b45;font-size:7px;font-weight:850}.translation-status.ok{background:#e6f2e9;color:#33704d}@media(max-width:800px){.translation-workflow,.translation-workflow form{align-items:stretch;flex-direction:column}}

/* Website Builder UX scale + fluid workspace */
body:has(.website-builder-shell) .content{width:100%;max-width:none;padding-right:clamp(16px,2vw,34px)}
body:has(.website-builder-shell) .topbar{width:100%;max-width:none}
.website-builder-shell{grid-template-columns:minmax(250px,290px) minmax(0,1fr)!important;width:100%;max-width:none!important;gap:16px!important}
.builder-main{width:100%;max-width:none;min-width:0}.builder-sidebar{width:100%;min-width:0}
.builder-sidebar .eyebrow{font-size:11px!important}.builder-page-list a,.builder-tool-link,.builder-sidebar summary{font-size:12px!important;line-height:1.35}.builder-page-list small{font-size:10px!important}.builder-sidebar input,.builder-sidebar button{font-size:12px!important}
.builder-main .eyebrow{font-size:11px!important}.builder-main label{font-size:11px!important}.builder-main input,.builder-main textarea,.builder-main select,.builder-main button{font-size:13px}.builder-main .muted.small,.builder-main small{font-size:10px}.builder-main h3{font-size:18px}.cs-card-title p,.cs-tile-config p,.cs-tile-config a{font-size:10px!important}.cs-card-title>span{font-size:10px}.cs-tile-config strong{font-size:12px}.translation-status{font-size:10px}
.ai-field{position:relative;display:block;width:100%}.ai-field>input,.ai-field>textarea{width:100%;padding-right:46px!important}.ai-field>.ai-copy-btn{position:absolute!important;right:8px;top:50%;transform:translateY(-50%);width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;display:grid!important;place-items:center;border-radius:50%!important;background:#e9f3ed!important;border:1px solid #c7ddd1!important;color:#2f745c!important;font-size:15px!important;line-height:1!important;z-index:2}.ai-field:has(textarea)>.ai-copy-btn{top:10px;transform:none}.ai-copy-btn:hover{background:#dcece3!important}
.global-sidebar-collapsed body:has(.website-builder-shell) .content,body.global-sidebar-collapsed:has(.website-builder-shell) .content{padding-left:clamp(16px,2vw,34px)!important}
@media(min-width:1500px){.website-builder-shell{grid-template-columns:300px minmax(0,1fr)!important}.coming-builder-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.website-builder-shell{grid-template-columns:1fr!important}.builder-sidebar{position:static!important}.coming-builder-form{grid-template-columns:1fr}}

/* Website Builder block layout guard */
.builder-blocks{width:100%;max-width:none;min-width:0;display:block}.builder-blocks>.section-heading{width:100%;display:flex;justify-content:space-between;align-items:end;gap:14px}.builder-block{width:100%;max-width:none;margin:10px 0}.builder-block>form{width:100%;max-width:none}.builder-add-block{display:grid!important;grid-template-columns:minmax(180px,240px) minmax(180px,1fr) auto;gap:8px;align-items:end}.builder-add-block input,.builder-add-block select{min-width:0}.builder-main>.builder-blocks{justify-self:stretch!important}.builder-main{display:block!important}.builder-main>.card,.builder-main>.translation-workflow,.builder-main>.builder-blocks{width:100%}@media(max-width:900px){.builder-add-block{grid-template-columns:1fr}.builder-blocks>.section-heading{align-items:stretch;flex-direction:column}}

.translation-language-status{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.translation-language-status>span{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900;border:1px solid transparent}.translation-language-status b{font-size:9px}.translation-language-status .source{background:#e9f1ed;color:#285d4b;border-color:#cfe0d7}.translation-language-status .ok{background:#e5f3e9;color:#2f754d;border-color:#c6e4d0}.translation-language-status .stale{background:#f7eae3;color:#945b43;border-color:#edd5ca}

/* Global compact check controls — replaces browser-default oversized blue checks */
input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0 7px 0 0!important;border:1.5px solid #9eb8ad!important;border-radius:5px!important;background:#fff!important;display:inline-grid!important;place-content:center!important;vertical-align:middle!important;box-shadow:none!important;cursor:pointer!important}
input[type="checkbox"]::before{content:"";width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}
input[type="checkbox"]:checked{background:#3f856d!important;border-color:#3f856d!important}
input[type="checkbox"]:checked::before{transform:rotate(-45deg) scale(1)}
input[type="checkbox"]:focus-visible{outline:2px solid rgba(63,133,109,.25)!important;outline-offset:2px}
label:has(>input[type="checkbox"]){display:flex!important;align-items:center!important;gap:5px!important;min-height:24px!important}
.toggle-setting input[type="checkbox"]{width:18px!important;height:18px!important}

/* Visual Website Builder block library */
.block-library[hidden]{display:none!important}.block-library{margin:10px 0 18px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 42px rgba(25,55,43,.08)}.block-library-head{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:14px}.block-library-head h3{margin:2px 0 4px;font-size:20px}.block-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.block-library-card{margin:0}.block-library-card>button{width:100%;height:100%;padding:10px!important;border:1px solid #dce6e1!important;border-radius:14px!important;background:#fbfcfb!important;color:var(--ink)!important;text-align:left;display:flex!important;flex-direction:column;align-items:stretch!important;gap:6px;box-shadow:none!important;transition:.15s ease}.block-library-card>button:hover{transform:translateY(-2px);border-color:#9fc7b7!important;box-shadow:0 10px 24px rgba(38,91,70,.10)!important}.block-library-card strong{font-size:12px}.block-library-card small{font-size:9px!important;line-height:1.4;color:var(--muted)}.block-library-card em{font-style:normal;font-size:9px;color:var(--itara-strong);font-weight:850;margin-top:auto}.block-miniature{height:92px;border-radius:10px;background:#eef3f0;overflow:hidden;padding:8px;display:grid;gap:5px}.block-miniature i{display:block;border-radius:5px;background:#fff;border:1px solid rgba(40,80,62,.08)}.block-miniature-hero{grid-template-rows:1fr 8px 8px}.block-miniature-hero i:first-child{background:linear-gradient(135deg,#8ca99c,#315f4f)}.block-miniature-cards,.block-miniature-features,.block-miniature-products{grid-template-columns:repeat(3,1fr)}.block-miniature-banner{padding:0}.block-miniature-banner i:first-child{grid-column:1/-1;background:linear-gradient(135deg,#a7bfb4,#365f50)}.block-miniature-slider{grid-template-columns:1fr 2fr 1fr}.block-miniature-slider i:nth-child(2){background:#8eaa9e}.block-miniature-feature{grid-template-columns:1.2fr 1fr}.block-miniature-feature i:first-child{background:#8eaa9e}.block-miniature-text{grid-template-rows:10px 8px 8px 8px 1fr}.block-miniature-gallery{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr)}.block-miniature-booking,.block-miniature-contact{grid-template-columns:1fr 1fr}.block-miniature-booking i:last-child,.block-miniature-contact i:last-child{grid-column:1/-1;background:#4b8b72}.block-miniature-map i:first-child{grid-column:1/-1;background:linear-gradient(135deg,#d4eadc,#b9d9e8)}.block-miniature-reviews{grid-template-columns:repeat(3,1fr)}.block-miniature-reviews i{border-radius:9px}.block-miniature-faq{grid-template-rows:repeat(4,1fr)}.block-miniature-spacer i{display:none}.section-heading-after-library{display:none!important}@media(max-width:700px){.block-library-grid{grid-template-columns:1fr 1fr}.block-library-head{flex-direction:column}}@media(max-width:480px){.block-library-grid{grid-template-columns:1fr}}
