/* Everything is scoped to .awdml; no resets of the host WordPress theme. */
.awdml {
    --ml-ink: #203436; --ml-muted: #657777; --ml-accent: #196967; --ml-dark: #173e42;
    --ml-paper: #f6f7f3; --ml-line: #dce4df; --ml-soft: #ecf3ed; --ml-orange: #b05d36;
    width: 100%; max-width: 1160px; margin: 24px auto; color: var(--ml-ink); color-scheme: light;
    font: 400 16px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    text-align: left; isolation: isolate;
}
.awdml *, .awdml *::before, .awdml *::after { box-sizing: border-box; }
.awdml [hidden] { display: none !important; }
.awdml h2, .awdml h3, .awdml h4, .awdml p, .awdml fieldset { padding: 0; border: 0; margin: 0; color: inherit; font-family: inherit; letter-spacing: normal; }
.awdml h2 { font-size: clamp(24px, 3vw, 32px); font-weight: 700; line-height: 1.15; }
.awdml h3 { font-size: 21px; font-weight: 700; line-height: 1.3; }
.awdml h4 { font-size: 18px; font-weight: 650; line-height: 1.5; }
.awdml p { margin: 0 0 14px; }
.awdml strong, .awdml b { font-weight: 650; }
.awdml small { font-size: 13px; }
.awdml button, .awdml input, .awdml textarea, .awdml select { font-family: inherit; font-size: 16px; font-weight: 400; letter-spacing: normal; text-transform: none; line-height: 1.4; }
.awdml button::before, .awdml button::after { display: none; }
.awdml input:not([type=checkbox]), .awdml textarea, .awdml select {
    appearance: auto; display: block; width: 100%; max-width: 100%; min-width: 0; min-height: 47px;
    border: 1px solid #b9c9c3; border-radius: 10px; color: var(--ml-ink); background: #fff;
    padding: 11px 12px; margin: 0; box-shadow: none;
}
.awdml textarea { resize: vertical; }
.awdml input[type=date] { -webkit-appearance: none; min-width: 0; }
.awdml input[type=checkbox] { appearance: auto; flex: 0 0 auto; width: 20px; height: 20px; min-width: 20px; margin: 3px 0 0; accent-color: var(--ml-accent); }
.awdml input[type=file] { padding: 10px; height: auto; font-size: 14px; }
.awdml ::placeholder { color: #84918f; opacity: 1; }
.awdml :focus-visible { outline: 3px solid #a56b2d; outline-offset: 3px; }
.awdml button { touch-action: manipulation; cursor: pointer; }
.awdml .ml-main { background: var(--ml-paper); padding: 30px; border-radius: 24px; border: 1px solid #e1e7df; }
.awdml .ml-icon { width: 21px; height: 21px; display: inline-block; flex: 0 0 auto; vertical-align: middle; }
.awdml .ml-btn {
    display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: 46px;
    border: 1px solid #ccd8d1; border-radius: 10px; background: #fff; color: var(--ml-ink);
    padding: 11px 17px; margin: 0; font-size: 14px; font-weight: 600; line-height: 1.35;
    text-decoration: none; box-shadow: none; white-space: normal; transition: background .15s, border-color .15s;
}
.awdml .ml-btn:hover { border-color: var(--ml-accent); background: #eff5f0; color: var(--ml-dark); }
.awdml .ml-primary { background: var(--ml-accent); color: #fff; border-color: var(--ml-accent); }
.awdml .ml-primary:hover { background: var(--ml-dark); color: #fff; }
.awdml .ml-secondary { background: #edf3ed; border-color: #d8e4db; }
.awdml .ml-quiet { background: transparent; border-color: transparent; }
.awdml .ml-small { font-size: 13px; min-height: 44px; padding: 9px 12px; }
.awdml .ml-link { min-height: 44px; padding: 7px 0; border: 0; background: transparent; text-decoration: underline; text-underline-offset: 3px; color: var(--ml-accent); }
.awdml .ml-link:hover { background: transparent; }
.awdml .ml-btn:disabled { cursor: default; opacity: .55; }
.awdml .ml-danger-text { color: #a13730; }
.awdml .ml-eyebrow { display: block; color: var(--ml-muted); font-size: 10px; font-weight: 700; letter-spacing: 1.7px; line-height: 1.5; margin-bottom: 5px; }
.awdml .ml-header { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 16px; }
.awdml .ml-brand { display: flex; align-items: center; gap: 15px; min-width: 0; }
.awdml .ml-brand > .ml-icon { width: 52px; height: 52px; padding: 13px; border-radius: 16px; background: #e3ece4; color: var(--ml-dark); }
.awdml .ml-header-controls { display: flex; align-items: center; gap: 8px; }
.awdml .ml-year-label select { font-weight: 700; width: 98px; min-height: 46px; padding-right: 20px; }
.awdml .ml-subhead { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--ml-muted); margin: 0 0 22px; }
.awdml .ml-subhead span:first-child { display: inline-flex; align-items: center; gap: 5px; }
.awdml .ml-subhead .ml-icon { width: 13px; height: 13px; }
.awdml .ml-summary { display: grid; grid-template-columns: 1.1fr 1fr; gap: 18px; }
.awdml .ml-progress-card { padding: 23px 26px 21px; border-radius: 17px; background: var(--ml-dark); color: #fff; overflow: hidden; }
.awdml .ml-progress-top { display: flex; justify-content: space-between; gap: 12px; font-size: 10px; font-weight: 650; letter-spacing: 1.2px; color: #d1e1d9; }
.awdml .ml-big-number { margin: 9px 0 0; color: #fff; font-size: clamp(40px, 5vw, 60px); font-weight: 600; line-height: 1.2; letter-spacing: -1.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.awdml .ml-big-number span { font-size: 25px; font-weight: 350; color: #bed3ca; letter-spacing: -.3px; }
.awdml .ml-unit-caption { color: #d6e4dc; font-size: 13px; margin: 2px 0 22px; }
.awdml .ml-meter { position: relative; height: 7px; background: #406265; border-radius: 6px; margin-bottom: 12px; }
.awdml .ml-meter > span { display: block; height: 100%; background: #d9e9b6; border-radius: 6px; }
.awdml .ml-meter > i { position: absolute; top: -5px; height: 17px; width: 2px; background: #f2b18a; }
.awdml .ml-meter-labels { display: flex; justify-content: space-between; gap: 12px; color: #c3d7ce; font-size: 10px; }
.awdml .ml-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.awdml .ml-metric { padding: 17px 20px; border: 1px solid var(--ml-line); border-radius: 14px; background: #fff; }
.awdml .ml-metric-title { font-size: 9px; letter-spacing: 1.1px; font-weight: 700; color: var(--ml-muted); display: block; }
.awdml .ml-metric > strong { display: block; font-size: 30px; line-height: 1.25; margin: 6px 0 5px; font-variant-numeric: tabular-nums; }
.awdml .ml-metric small { color: var(--ml-muted); font-size: 11px; line-height: 1.4; display: block; }
.awdml .ml-pace { grid-column: 1 / -1; padding-top: 14px; padding-bottom: 14px; }
.awdml .ml-pace > strong { font-size: 25px; margin: 2px 0; }
.awdml .ml-pace em { font-size: 13px; font-weight: 400; font-style: normal; color: var(--ml-muted); }
.awdml .ml-pace-message { border-radius: 11px; padding: 13px 17px; margin-top: 13px; background: #eef1e9; border-left: 3px solid #839e78; font-size: 13px; }
.awdml .ml-pace-message > strong, .awdml .ml-pace-message > span { display: block; }
.awdml .ml-pace-message > span { font-size: 12px; margin-top: 2px; color: var(--ml-muted); }
.awdml .ml-ahead { background: #eaf2e8; }
.awdml .ml-behind { background: #faf0e6; border-left-color: #c48657; }
.awdml .ml-top-actions { display: flex; gap: 10px; margin: 22px 0; flex-wrap: wrap; }
.awdml .ml-top-actions > .ml-quiet { margin-left: auto; }
.awdml .ml-panel { padding: 23px 24px; margin-bottom: 20px; border: 1px solid var(--ml-line); border-radius: 17px; background: #fff; min-width: 0; overflow: hidden; }
.awdml .ml-section-head { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 15px; }
.awdml .ml-section-head h3 { font-size: 20px; }
.awdml .ml-zoom { display: flex; gap: 2px; padding: 4px; background: #f0f3ee; border-radius: 10px; }
.awdml .ml-zoom .ml-btn { min-height: 37px; padding: 8px 12px; border: 0; font-size: 12px; color: var(--ml-muted); background: transparent; border-radius: 7px; }
.awdml .ml-zoom .is-active { background: #fff; color: var(--ml-dark); box-shadow: 0 1px 4px #16342b12; }
.awdml .ml-timeline-nav { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 13px; }
.awdml .ml-timeline-nav p { margin: 0; font-size: 12px; color: var(--ml-muted); }
.awdml .ml-timeline-nav .ml-small { min-height: 34px; font-size: 11px; padding: 7px 11px; flex: 0 0 auto; }
.awdml .ml-timeline-host { width: 100%; min-width: 0; }
.awdml .ml-timeline-scroll { width: 100%; max-height: 465px; overflow: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; border: 1px solid #e5ebe4; border-radius: 10px; background: #fcfdfb; padding-bottom: 8px; scrollbar-width: auto; scrollbar-color: #a3b9b0 #f0f3ed; }
.awdml .ml-timeline-svg { display: block; max-width: none !important; overflow: visible; }
.awdml .ml-timeline-svg text { font-family: inherit; }
.awdml .ml-axis-line { stroke: #9bafa7; stroke-width: 1.3; }
.awdml .ml-month-grid { stroke: #dce5dd; stroke-width: 1; stroke-dasharray: 3 5; }
.awdml .ml-month-label { fill: #617770; font-size: 10px; font-weight: 650; letter-spacing: 1.1px; }
.awdml .ml-day-label { fill: #81978e; font-size: 9px; }
.awdml .ml-today-line { stroke: #c3794b; stroke-dasharray: 4 5; stroke-width: 1.3; }
.awdml .ml-today-label { fill: #a35c34; font-size: 9px; font-weight: 650; }
.awdml .ml-tl-book { color: #246c62; cursor: pointer; outline: none; }
.awdml .ml-color-1 { color: #a7773e; } .awdml .ml-color-2 { color: #677da0; }
.awdml .ml-color-3 { color: #836c93; } .awdml .ml-color-4 { color: #79924f; }
.awdml .ml-tl-hit { fill: transparent; }
.awdml .ml-tl-book:hover .ml-tl-hit, .awdml .ml-tl-book:focus-visible .ml-tl-hit { fill: #e2ecdf8c; }
.awdml .ml-tl-book:focus-visible .ml-tl-hit { stroke: currentColor; stroke-dasharray: 3 3; }
.awdml .ml-tl-gap { stroke: #bac9c1; stroke-width: 2; stroke-dasharray: 3 4; }
.awdml .ml-tl-track { stroke: currentColor; stroke-width: 4; stroke-linecap: round; }
.awdml .ml-tl-point { fill: #fff; stroke: currentColor; stroke-width: 1.4; }
.awdml .ml-tl-start { fill: currentColor; stroke: #fff; stroke-width: 1.5; }
.awdml .ml-tl-pause { fill: #fff; stroke: currentColor; stroke-width: 2.5; }
.awdml .ml-tl-end { fill: currentColor; stroke: #fff; stroke-width: 1; }
.awdml .ml-tl-arrow, .awdml .ml-label-leader { fill: none; stroke: currentColor; stroke-width: 1.5; }
.awdml .ml-tl-label { font-size: 11px; font-weight: 550; fill: #354b43; }
.awdml .ml-tl-end-label { font-size: 10px; font-weight: 400; fill: #627c6d; }
.awdml .ml-legend { display: flex; flex-wrap: wrap; gap: 10px 19px; margin: 14px 0 0; color: var(--ml-muted); font-size: 10px; }
.awdml .ml-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.awdml .ml-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ml-accent); display: inline-block; }
.awdml .ml-paused-dot { border: 2px solid var(--ml-accent); background: transparent; }
.awdml .ml-finished-dot { border-radius: 2px; }
.awdml .ml-legend-line { display: inline-block; height: 3px; width: 18px; background: var(--ml-accent); }
.awdml .ml-timeline-empty { position: relative; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 32px 4px 10px; }
.awdml .ml-timeline-empty > span { font-size: 9px; letter-spacing: 1px; color: var(--ml-muted); }
.awdml .ml-empty-axis { height: 2px; background: var(--ml-line); flex: 1; position: relative; }
.awdml .ml-empty-axis i { width: 10px; height: 10px; background: #bdcfc4; position: absolute; left: 0; top: -4px; border-radius: 50%; }
.awdml .ml-timeline-empty > p { width: 100%; margin: 14px 0 0; text-align: center; color: var(--ml-muted); font-size: 13px; }
.awdml .ml-search { max-width: 285px; width: 45%; }
.awdml .ml-search input { min-height: 41px; padding: 9px 12px; font-size: 14px; background: #fafcf9; }
.awdml .ml-tabs { display: flex; align-items: center; gap: 5px; overflow-x: auto; margin: 2px 0 18px; padding-bottom: 3px; }
.awdml .ml-tabs .ml-btn { flex: 0 0 auto; font-size: 12px; min-height: 38px; padding: 8px 12px; border-color: transparent; color: var(--ml-muted); background: #f5f7f3; }
.awdml .ml-tabs .is-active { background: #e3eee4; color: #295a44; border-color: #cbded0; }
.awdml .ml-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.awdml .ml-book-card { border: 1px solid var(--ml-line); border-radius: 13px; padding: 16px; display: flex; flex-direction: column; min-width: 0; background: #fff; }
.awdml .ml-book-card-top { display: flex; align-items: center; justify-content: space-between; gap: 5px; margin-bottom: 10px; }
.awdml .ml-book-card-top > span:last-child:not(.ml-badge) { font-size: 10px; color: var(--ml-muted); white-space: nowrap; }
.awdml .ml-badge { display: inline-flex; align-items: center; padding: 4px 8px; font-size: 10px; font-weight: 650; line-height: 1.35; border-radius: 5px; background: #edf4ec; color: #426446; }
.awdml .ml-status-paused { background: #faf0e3; color: #946a31; }
.awdml .ml-status-finished { background: #e9f1f4; color: #3e6979; }
.awdml .ml-book-title { display: block; width: 100%; padding: 0; margin: 0 0 15px; border: 0; border-radius: 0; font-size: 15px; font-weight: 600; line-height: 1.5; background: transparent; color: var(--ml-ink); text-align: left; overflow-wrap: anywhere; box-shadow: none; }
.awdml .ml-book-title:hover { color: var(--ml-accent); text-decoration: underline; }
.awdml .ml-book-pages { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; margin-top: auto; margin-bottom: 8px; }
.awdml .ml-book-pages > strong { font-size: 25px; font-variant-numeric: tabular-nums; }
.awdml .ml-book-pages > span { font-size: 11px; color: var(--ml-muted); }
.awdml .ml-mini-meter { background: #edf2ec; height: 4px; border-radius: 3px; margin-bottom: 12px; }
.awdml .ml-mini-meter > span { display: block; height: 100%; background: #91b6a0; border-radius: 3px; }
.awdml .ml-book-year { color: var(--ml-muted); font-size: 11px; margin-bottom: 13px; }
.awdml .ml-card-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 2px; }
.awdml .ml-card-actions .ml-small { font-size: 11px; padding: 9px 10px; }
.awdml .ml-card-actions .ml-icon { width: 14px; height: 14px; }
.awdml .ml-more { text-align: center; margin: 20px 0 6px; }
.awdml .ml-list-count { font-size: 11px; color: var(--ml-muted); margin-top: 15px; margin-bottom: 0; }
.awdml .ml-empty, .awdml .ml-locked { text-align: center; padding: 35px 20px; color: var(--ml-muted); }
.awdml .ml-empty > .ml-icon, .awdml .ml-locked > .ml-icon { width: 43px; height: 43px; margin: 5px 0 14px; color: #89a794; }
.awdml .ml-empty h4, .awdml .ml-locked h2 { margin-bottom: 10px; color: var(--ml-ink); }
.awdml .ml-empty p, .awdml .ml-locked p { font-size: 14px; max-width: 450px; margin: 0 auto 20px; }
.awdml .ml-locked { background: var(--ml-paper); border-radius: 20px; border: 1px solid var(--ml-line); }
.awdml .ml-locked .ml-actions { justify-content: center; }
.awdml .ml-footer { color: var(--ml-muted); font-size: 11px; display: flex; align-items: center; gap: 10px 20px; flex-wrap: wrap; padding: 0 3px; }
.awdml .ml-footer p { width: 100%; margin: 0; font-size: 12px; }
.awdml .ml-footer > span { margin-left: auto; }
.awdml .ml-footer .ml-link { font-size: 11px; }
.awdml .ml-loading { text-align: center; padding: 50px 25px; background: var(--ml-paper); border-radius: 18px; font-size: 16px; }
.awdml .ml-dialog {
    position: fixed; inset: 0; width: min(620px, calc(100vw - 30px)); max-width: none;
    height: fit-content; max-height: calc(100dvh - 44px); margin: auto; padding: 0;
    color: var(--ml-ink); background: #fff; border: 1px solid #d4dfd7; border-radius: 19px;
    box-shadow: 0 24px 100px #132c3450; overflow: auto; overscroll-behavior: contain; z-index: 2147483000;
    font-family: inherit; line-height: 1.65;
}
.awdml .ml-dialog:not([open]) { display: none; }
.awdml .ml-dialog-wide { width: min(800px, calc(100vw - 30px)); }
.awdml .ml-dialog::backdrop { background: #10282fcc; backdrop-filter: blur(3px); }
.awdml .ml-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 19px 23px; border-bottom: 1px solid var(--ml-line); position: sticky; top: 0; background: #fff; z-index: 2; }
.awdml .ml-dialog-header h3 { font-size: 20px; line-height: 1.3; }
.awdml .ml-close { padding: 8px; min-height: 42px; min-width: 42px; background: #f1f5f0; border: 0; }
.awdml .ml-dialog-body { padding: 23px; }
.awdml .ml-dialog-body p { font-size: 14px; }
.awdml .ml-field { display: block; font-size: 13px; font-weight: 600; margin: 0 0 17px; line-height: 1.45; min-width: 0; }
.awdml .ml-field > input, .awdml .ml-field > textarea, .awdml .ml-field > select { margin-top: 7px; }
.awdml .ml-optional { font-size: 11px; color: var(--ml-muted); font-weight: 400; }
.awdml .ml-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.awdml .ml-form-three { grid-template-columns: .8fr 1.2fr 1fr; }
.awdml .ml-field-help { color: var(--ml-muted); font-size: 12px !important; margin: -7px 0 18px; }
.awdml .ml-form-footer { display: flex; gap: 10px; padding-top: 19px; margin-top: 12px; border-top: 1px solid var(--ml-line); }
.awdml .ml-form-footer > .ml-primary { flex: 1; }
.awdml .ml-form-error, .awdml .ml-cross-year, .awdml .ml-import-warning { padding: 12px 14px; font-size: 13px; background: #fff3e7; color: #845227; border: 1px solid #efd7bf; border-radius: 9px; margin: 12px 0; }
.awdml .ml-form-error { background: #fff0ed; color: #92392d; border-color: #eccac0; }
.awdml .ml-details { border: 1px solid var(--ml-line); border-radius: 11px; margin: 17px 0 0; overflow: hidden; }
.awdml .ml-details > summary { padding: 14px 16px; font-size: 13px; font-weight: 650; cursor: pointer; background: #f7f9f4; list-style: disclosure-closed; display: list-item; list-style-position: inside; }
.awdml .ml-details[open] > summary { list-style-type: disclosure-open; border-bottom: 1px solid var(--ml-line); }
.awdml .ml-details-body { padding: 17px 16px; }
.awdml .ml-details-body > p { font-size: 13px; }
.awdml .ml-details-body .ml-field:last-child { margin-bottom: 0; }
.awdml .ml-context-title { font-size: 17px !important; font-weight: 650; border-bottom: 1px solid var(--ml-line); padding-bottom: 17px; overflow-wrap: anywhere; }
.awdml .ml-delta-preview, .awdml .ml-setting-preview { color: #3d7351; background: #edf5ec; border-radius: 9px; padding: 11px 13px; font-size: 12px; margin: 10px 0 17px; }
.awdml .ml-delta-preview:empty { display: none; }
.awdml .ml-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.awdml .ml-detail-book > h4 { font-size: 22px; margin: 13px 0; overflow-wrap: anywhere; }
.awdml .ml-detail-pages { display: flex; align-items: baseline; gap: 6px; }
.awdml .ml-detail-pages strong { font-size: 39px; line-height: 1.3; }
.awdml .ml-detail-pages span { font-size: 16px; color: var(--ml-muted); }
.awdml .ml-detail-book > p { color: var(--ml-muted); margin: 14px 0 18px; }
.awdml .ml-history { padding: 0 15px; }
.awdml .ml-history-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; border-bottom: 1px solid var(--ml-line); padding: 14px 0; }
.awdml .ml-history-row:last-child { border-bottom: 0; }
.awdml .ml-history-row time { font-size: 12px; color: var(--ml-muted); margin-right: 10px; }
.awdml .ml-history-row strong { display: block; font-size: 13px; margin-top: 5px; }
.awdml .ml-history-row strong > span { color: #5f8260; font-weight: 400; }
.awdml .ml-history-actions { display: flex; gap: 5px; flex: 0 0 auto; }
.awdml .ml-history-actions .ml-small { font-size: 11px; padding: 6px 9px; }
.awdml .ml-note { white-space: pre-wrap; overflow-wrap: anywhere; color: var(--ml-muted); font-size: 12px !important; margin: 7px 0 0; }
.awdml .ml-detail-bottom { display: flex; gap: 12px; justify-content: space-between; flex-wrap: wrap; margin-top: 12px; }
.awdml .ml-detail-bottom .ml-link { font-size: 12px; }
.awdml .ml-check-field { display: flex; gap: 12px; align-items: flex-start; padding: 17px; border: 1px solid var(--ml-line); border-radius: 10px; font-size: 14px; cursor: pointer; }
.awdml .ml-check-field small { display: block; color: var(--ml-muted); margin-top: 5px; font-size: 12px; }
.awdml .ml-tool-block { border-bottom: 1px solid var(--ml-line); padding-bottom: 23px; margin-bottom: 21px; }
.awdml .ml-tool-block h4 { font-size: 17px; margin-bottom: 10px; }
.awdml .ml-help h4 { margin: 23px 0 9px; font-size: 17px; }
.awdml .ml-help h4:first-child { margin-top: 0; }
.awdml .ml-help p { color: #566e64; }
.awdml .ml-import-row { border: 1px solid var(--ml-line); border-radius: 12px; padding: 16px; margin: 18px 0; }
.awdml .ml-import-row legend { font-size: 14px; font-weight: 650; padding: 0 8px; width: auto; }
.awdml .ml-import-row legend label { display: flex; align-items: center; gap: 8px; }
.awdml .ml-import-row .ml-field { font-size: 12px; }
.awdml .ml-import-row .ml-field:last-child { margin-bottom: 0; }
.awdml .ml-toast { position: fixed; bottom: max(24px, env(safe-area-inset-bottom)); left: 50%; transform: translateX(-50%); z-index: 2147483640; width: max-content; max-width: min(580px, calc(100vw - 28px)); padding: 16px 20px; background: #204e40; color: #fff; font-size: 14px; box-shadow: 0 8px 30px #10282840; border-radius: 12px; }
.awdml .ml-toast-error { background: #873d2e; }
.awdml .ml-network { padding: 12px; background: #fff2df; border: 1px solid #ead4b2; border-radius: 10px; margin-bottom: 16px; font-size: 12px; }
.awdml .ml-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
body.awdml-standalone { margin: 0 !important; padding: 0 12px !important; background: #f0f3ed !important; min-width: 280px; }
body.awdml-standalone > main { padding-top: max(0px, env(safe-area-inset-top)); padding-bottom: max(0px, env(safe-area-inset-bottom)); }
body.awdml-standalone .awdml { margin: 16px auto; }
@media (max-width: 960px) {
    .awdml .ml-main { padding: 22px; }
    .awdml .ml-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .awdml .ml-summary { grid-template-columns: 1fr 1fr; gap: 12px; }
    .awdml .ml-progress-card { padding: 22px 19px; }
    .awdml .ml-metric { padding: 15px; }
    .awdml .ml-metric-title { font-size: 8px; }
    .awdml .ml-big-number { font-size: 43px; }
}
@media (max-width: 640px) {
    .awdml { margin: 12px auto; }
    .awdml .ml-main { padding: 16px 12px; border-radius: 17px; }
    .awdml .ml-header { gap: 8px; margin: 2px 0 13px; }
    .awdml .ml-brand { gap: 9px; }
    .awdml .ml-brand > .ml-icon { width: 39px; height: 39px; padding: 9px; border-radius: 12px; }
    .awdml .ml-brand .ml-eyebrow { font-size: 7px; letter-spacing: 1px; }
    .awdml h2 { font-size: 23px; }
    .awdml .ml-year-label select { width: 77px; font-size: 16px; padding: 10px 5px; border-radius: 9px; }
    .awdml .ml-header-controls { gap: 5px; }
    .awdml .ml-icon-text { padding: 10px; min-width: 43px; }
    .awdml .ml-icon-text > span { display: none; }
    .awdml .ml-subhead { font-size: 10px; margin-bottom: 16px; }
    .awdml .ml-subhead > span:last-child { display: none; }
    .awdml .ml-summary { grid-template-columns: 1fr; gap: 11px; }
    .awdml .ml-progress-card { padding: 19px 20px; }
    .awdml .ml-big-number { font-size: 52px; }
    .awdml .ml-big-number > span { font-size: 23px; }
    .awdml .ml-unit-caption { margin-bottom: 19px; }
    .awdml .ml-metrics { gap: 9px; }
    .awdml .ml-metric { padding: 13px 14px; border-radius: 11px; }
    .awdml .ml-metric-title { font-size: 9px; letter-spacing: .8px; }
    .awdml .ml-metric > strong { font-size: 28px; margin: 3px 0; }
    .awdml .ml-pace { padding: 12px 14px; }
    .awdml .ml-pace > strong { font-size: 26px; }
    .awdml .ml-pace-message { font-size: 12px; padding: 11px 13px; }
    .awdml .ml-pace-message > span { font-size: 11px; }
    .awdml .ml-top-actions { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin: 17px 0; }
    .awdml .ml-top-actions > .ml-primary { grid-column: 1 / -1; min-height: 49px; }
    .awdml .ml-top-actions > .ml-secondary { justify-content: flex-start; }
    .awdml .ml-top-actions > .ml-quiet { margin-left: 0; padding-left: 10px; padding-right: 10px; }
    .awdml .ml-panel { padding: 16px 13px; margin-bottom: 14px; border-radius: 12px; }
    .awdml .ml-section-head { flex-wrap: wrap; gap: 13px; margin-bottom: 12px; }
    .awdml .ml-section-head h3 { font-size: 19px; }
    .awdml .ml-eyebrow { font-size: 8px; letter-spacing: 1.2px; }
    .awdml .ml-zoom { width: 100%; }
    .awdml .ml-zoom .ml-btn { flex: 1; min-height: 41px; font-size: 12px; }
    .awdml .ml-timeline-nav { align-items: flex-start; gap: 8px; }
    .awdml .ml-timeline-nav p { font-size: 11px; }
    .awdml .ml-timeline-nav .ml-small { min-height: 44px; }
    .awdml .ml-timeline-scroll { max-height: 430px; }
    .awdml .ml-legend { gap: 9px 13px; font-size: 9px; }
    .awdml .ml-search { width: 100%; max-width: none; }
    .awdml .ml-search input { font-size: 16px; min-height: 45px; }
    .awdml .ml-tabs { gap: 4px; margin-bottom: 12px; }
    .awdml .ml-tabs .ml-btn { min-height: 44px; padding: 9px 11px; }
    .awdml .ml-cards { grid-template-columns: 1fr; gap: 11px; }
    .awdml .ml-book-card { padding: 15px; }
    .awdml .ml-book-title { font-size: 16px; }
    .awdml .ml-book-pages > strong { font-size: 27px; }
    .awdml .ml-card-actions { gap: 5px; }
    .awdml .ml-card-actions .ml-small { font-size: 12px; min-height: 46px; padding: 10px; }
    .awdml .ml-book-year { font-size: 12px; }
    .awdml .ml-footer { padding: 0 3px; }
    .awdml .ml-footer p { font-size: 11px; }
    .awdml .ml-footer > span { margin-left: 0; width: 100%; font-size: 10px; }
    .awdml .ml-dialog { width: calc(100vw - 14px); max-height: calc(100dvh - 18px); border-radius: 15px; }
    .awdml .ml-dialog-header { padding: 15px; }
    .awdml .ml-dialog-header h3 { font-size: 18px; }
    .awdml .ml-dialog-body { padding: 17px 15px max(17px, env(safe-area-inset-bottom)); }
    .awdml .ml-form-row { gap: 11px; }
    .awdml .ml-form-three { grid-template-columns: 1fr; }
    .awdml .ml-field { font-size: 12px; }
    .awdml .ml-history-row { flex-wrap: wrap; }
    .awdml .ml-history-actions { width: 100%; }
    .awdml .ml-history-actions .ml-small { min-height: 44px; padding: 10px 15px; }
    .awdml .ml-detail-book h4 { font-size: 20px; }
    .awdml .ml-details > summary { padding: 13px; font-size: 12px; }
    .awdml .ml-details-body { padding: 14px 12px; }
    .awdml .ml-toast { font-size: 13px; padding: 13px 16px; }
    body.awdml-standalone { padding: 0 6px !important; }
    body.awdml-standalone .awdml { margin: 6px auto; }
}
@media (max-width: 360px) {
    .awdml .ml-brand > .ml-icon { display: none; }
    .awdml .ml-big-number { font-size: 45px; }
    .awdml .ml-form-row { grid-template-columns: 1fr; gap: 0; }
    .awdml .ml-meter-labels { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
    .awdml *, .awdml *::before, .awdml *::after { transition: none !important; scroll-behavior: auto !important; }
}
@media print {
    .awdml .ml-top-actions, .awdml .ml-tabs, .awdml .ml-card-actions, .awdml .ml-header-controls, .awdml .ml-dialog, .awdml .ml-toast { display: none !important; }
    .awdml .ml-main { padding: 0; border: 0; }
    .awdml .ml-timeline-panel { display: none; }
    .awdml .ml-book-card { break-inside: avoid; }
}
/* Thumb-accessible actions: no need to scroll past the timeline to enter progress. */
.awdml .ml-mobile-dock { display: none; }
.awdml .ml-quick-row { display: flex; gap: 15px; align-items: center; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--ml-line); }
.awdml .ml-quick-row:last-child { border-bottom: none; }
.awdml .ml-quick-row > div { min-width: 0; }
.awdml .ml-quick-row strong { display: block; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.awdml .ml-quick-row small { display: block; font-size: 12px; color: var(--ml-muted); margin-top: 3px; }
.awdml .ml-quick-row .ml-btn { flex: 0 0 auto; }
@media (max-width: 640px) {
    .awdml .ml-main:has(.ml-mobile-dock) { padding-bottom: 88px; }
    .awdml .ml-mobile-dock { position: fixed; left: 10px; right: 10px; bottom: max(9px, env(safe-area-inset-bottom)); display: grid; grid-template-columns: 1fr 1.2fr; gap: 7px; padding: 7px; border: 1px solid #ccdcd1; border-radius: 14px; background: #f9fbf7f5; box-shadow: 0 5px 24px #1a3e4230; z-index: 99990; backdrop-filter: blur(10px); }
    .awdml .ml-mobile-dock .ml-btn { min-height: 47px; font-size: 13px; padding: 11px 9px; }
    .awdml .ml-mobile-dock .ml-icon { width: 18px; height: 18px; }
    .awdml .ml-toast { bottom: max(92px, calc(env(safe-area-inset-bottom) + 78px)); }
}
@media print { .awdml .ml-mobile-dock { display: none !important; } }

/* 2.0: account gates, private identity, and short mobile-friendly onboarding. */
.awdml .ml-gate { max-width: 580px; margin: 34px auto; padding: clamp(24px,5vw,46px); border: 1px solid var(--ml-line); border-radius: 24px; background: white; box-shadow: 0 10px 35px #153c3610; }
.awdml .ml-gate h2 { margin: 8px 0 18px; }
.awdml .ml-gate p { color: var(--ml-muted); }
.awdml .ml-gate-symbol { width: 62px; height: 62px; display: grid; place-items: center; color: var(--ml-accent); background: var(--ml-soft); border-radius: 18px; margin-bottom: 20px; }
.awdml .ml-gate-symbol svg { width: 33px; height: 33px; }
.awdml .ml-gate form { margin-top: 24px; }
.awdml .ml-gate form > .ml-btn { width: 100%; }
.awdml .ml-gate .ml-field { margin-bottom: 18px; }
.awdml .ml-gate-logout { margin-top: 24px; font-size: 14px; }
.awdml .ml-account-link { color: var(--ml-accent); text-decoration: underline; text-underline-offset: 3px; }
.awdml .ml-rule-note { padding: 14px 16px; border-radius: 12px; background: var(--ml-soft); font-size: 14px; }
.awdml .ml-account-strip { display: flex; align-items: center; gap: 10px; padding: 10px 0 18px; }
.awdml .ml-avatar { display: grid; place-items: center; flex-shrink: 0; width: 38px; height: 38px; background: var(--ml-soft); border-radius: 50%; font-size: 22px; }
.awdml .ml-account-name { min-width: 0; font-weight: 650; overflow-wrap: anywhere; }
.awdml .ml-account-strip .ml-btn { margin-left: auto; flex-shrink: 0; }
.awdml .ml-honeypot { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.awdml .ml-header-controls .ml-year-label select { width: 230px; max-width: 100%; }
.awdml .ml-progress-top { flex-wrap: wrap; gap: 6px; }
.awdml input[readonly] { background: #f1f4f1; }
.awdml-admin h1 small { font-size: 15px; color: #526b66; }
.awdml-admin .ml-admin-box { margin: 20px 0; background: #fff; border: 1px solid #c9d6d0; border-radius: 10px; padding: 20px; }
.awdml-admin .ml-admin-box summary { cursor: pointer; font-size: 16px; }
.awdml-admin .widefat td { vertical-align: middle; }
@media (max-width: 640px) {
    .awdml .ml-gate { margin: 12px 0; border-radius: 18px; padding: 24px 20px; }
    .awdml .ml-header-controls .ml-year-label { flex: 1; min-width: 0; }
    .awdml .ml-header-controls .ml-year-label select { width: 100%; max-width: 260px; padding-right: 26px; }
    .awdml .ml-header-controls { width: 100%; justify-content: space-between; }
    .awdml .ml-header { flex-wrap: wrap; }
    .awdml .ml-gate .ml-actions { flex-direction: column; }
    .awdml .ml-account-strip { padding-bottom: 16px; }
}

/* Explicit publication controls, independent from diary profile/import/undo. */
.awdml .ml-share-choices{max-height:300px;overflow:auto;border:1px solid #d6e0d7;border-radius:8px;padding:4px 12px;margin:10px 0 15px}
.awdml .ml-share-choice{display:flex;align-items:flex-start;gap:12px;padding:13px 0;line-height:1.6;font-size:14px;cursor:pointer}
.awdml .ml-share-choice input{width:21px;height:21px;flex:none;margin:3px 0 0;accent-color:#173e42}
.awdml .ml-share-choice span{flex:1;min-width:0;overflow-wrap:anywhere}.awdml .ml-share-choice small{display:block;color:#526968;font-size:11px}
.awdml .ml-share-choices .ml-share-choice+.ml-share-choice{border-top:1px solid #e1e8df}
.awdml .ml-share-info{padding:13px 16px;background:#edf2e6;border-radius:7px;font-size:12px;line-height:1.8;color:#334c48}
.awdml .ml-share-status{font-size:13px;padding-bottom:12px}.awdml .ml-share-consent{font-size:12px;font-weight:600}
.awdml .ml-account-strip{flex-wrap:wrap}.awdml .ml-account-strip .ml-btn{white-space:normal}
.awdml form[data-form="sharing"] h4{margin-bottom:8px;line-height:1.45}

/* Optional Bibliografia AI bridge — private diary only. */
.awdml .ml-catalogue-card,.ml-dialog .ml-catalogue-card{border:1px solid #c5d7d2;background:#f5f9f6;border-radius:12px;margin:16px 0;padding:18px}
.ml-dialog .ml-catalogue-card h4{margin:0 0 12px;font-size:17px}.ml-dialog .ml-catalog-help{font-size:13px;line-height:1.55;color:#51646a}
.ml-dialog .ml-catalog-result{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #dce6e1}.ml-dialog .ml-catalog-result>div{min-width:0;overflow-wrap:anywhere}.ml-dialog .ml-catalog-result strong{display:block;font-size:15px}.ml-dialog .ml-catalog-result small{display:block;color:#51646a;font-size:13px}.ml-dialog .ml-catalog-result button{flex:0 0 auto}.ml-dialog .ml-catalog-chosen:not(:empty){padding:12px;background:#eef5e9;border-radius:8px;margin:12px 0}.ml-dialog .ml-catalog-results{max-height:320px;overflow-y:auto;overscroll-behavior:contain}.ml-dialog .ml-catalogue .ml-details-body>p{font-size:14px}
