:root{color-scheme:light;--bacio-brown: #5a3324;--bacio-brown-dark: #3f2419;--bacio-cream: #f7f1e6;--bacio-surface: #ffffff;--bacio-text: #2b1b12;--bacio-muted: #8a7466;--bacio-border: #e6dbcb;--bacio-focus: #d9ad55;--error-bg: #f7e6e1;--error-text: #8a3323;--success-bg: #e8f1e8;--success-text: #2f5d3a;--radius: 8px;--sidebar-width: 240px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bacio-cream);color:var(--bacio-text);min-height:100vh}:focus-visible{outline:3px solid var(--bacio-focus);outline-offset:2px}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.auth-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.auth-card{width:100%;max-width:26rem;background:var(--bacio-surface);border:1px solid var(--bacio-border);border-radius:var(--radius);padding:2rem}.auth-card__brand{display:flex;flex-direction:column;margin-bottom:1.5rem}.auth-card__brand-name{font-size:1.15rem;font-weight:700;color:var(--bacio-brown)}.auth-card__brand-sub{font-size:.8rem;color:var(--bacio-muted)}.auth-card__title{margin:0 0 .5rem;font-size:1.35rem}.auth-card__description{margin:0 0 1.25rem;color:var(--bacio-muted);font-size:.9rem}.auth-card__footer{margin:1.25rem 0 0;font-size:.875rem}.auth-card__footer a{color:var(--bacio-brown)}.field{margin-bottom:1rem}.field__label{display:block;margin-bottom:.35rem;font-size:.875rem;font-weight:600}.field__input{width:100%;padding:.6rem .7rem;font:inherit;border:1px solid var(--bacio-border);border-radius:var(--radius);background:var(--bacio-surface);color:var(--bacio-text)}.field__input[aria-invalid=true]{border-color:var(--error-text)}.field__hint{margin:.35rem 0 0;font-size:.8rem;color:var(--bacio-muted)}.field__error,.form-error{margin:.35rem 0 0;font-size:.85rem;color:var(--error-text)}.form-error{background:var(--error-bg);border-radius:var(--radius);padding:.6rem .75rem;margin-bottom:1rem}.button{width:100%;padding:.7rem 1rem;border:none;border-radius:var(--radius);background:var(--bacio-brown);color:#fff;font-weight:600}.button:hover:not(:disabled){background:var(--bacio-brown-dark)}.password-rules{list-style:none;padding:0;margin:0 0 1rem;font-size:.8rem;color:var(--bacio-muted)}.password-rules__item:before{content:"• "}.password-rules__item--ok{color:var(--success-text)}.password-rules__item--ok:before{content:"✓ "}.totp__qr{display:block;margin:0 auto 1rem;border:1px solid var(--bacio-border);border-radius:var(--radius);max-width:100%}.totp__secret{margin-bottom:1.25rem;text-align:center}.totp__secret-label{display:block;font-size:.8rem;color:var(--bacio-muted);margin-bottom:.35rem}.totp__secret-value{display:inline-block;padding:.4rem .6rem;background:var(--bacio-cream);border-radius:var(--radius);font-size:.9rem;word-break:break-all}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--bacio-brown);color:var(--bacio-cream);padding:1.5rem 1rem}.sidebar__brand{display:flex;flex-direction:column;margin-bottom:2rem}.sidebar__brand-name{font-weight:700}.sidebar__brand-sub{font-size:.75rem;opacity:.75}.sidebar__list{list-style:none;margin:0;padding:0}.sidebar__item{width:100%;text-align:left;padding:.6rem .75rem;margin-bottom:.25rem;border:none;border-radius:var(--radius);background:transparent;color:inherit;font-size:.9rem}.app-shell__main{flex:1;display:flex;flex-direction:column;min-width:0}.header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:var(--bacio-surface);border-bottom:1px solid var(--bacio-border)}.header__title{margin:0;font-size:1.05rem}.header__user{position:relative;display:flex;align-items:center;gap:.75rem}.header__name{font-size:.9rem;font-weight:600}.header__role-badge{padding:.2rem .55rem;border-radius:999px;background:var(--bacio-cream);border:1px solid var(--bacio-border);font-size:.75rem;color:var(--bacio-brown)}.header__role-badge--unknown{background:var(--error-bg);color:var(--error-text);border-color:var(--error-text)}.header__menu-button{padding:.35rem .7rem;border:1px solid var(--bacio-border);border-radius:var(--radius);background:var(--bacio-surface);font-size:.85rem}.header__menu{position:absolute;top:calc(100% + .5rem);right:0;z-index:10;min-width:11rem;list-style:none;margin:0;padding:.35rem;background:var(--bacio-surface);border:1px solid var(--bacio-border);border-radius:var(--radius);box-shadow:0 6px 18px #2b1b121f}.header__menu button{width:100%;text-align:left;padding:.5rem .6rem;border:none;border-radius:var(--radius);background:transparent;font-size:.875rem;color:inherit}.app-shell__content{flex:1;padding:2rem 1.5rem}.empty-state{max-width:32rem;margin:3rem auto;text-align:center}.empty-state__title{margin:0 0 .5rem;font-size:1.25rem}.empty-state__description{margin:0 0 1rem;color:var(--bacio-muted)}.empty-state__action a{color:var(--bacio-brown)}.page-loading{padding:3rem;text-align:center;color:var(--bacio-muted)}.error-boundary{max-width:32rem;margin:4rem auto;text-align:center}.toast-region{position:fixed;right:1rem;bottom:1rem;z-index:50;display:flex;flex-direction:column;gap:.5rem}.toast{display:flex;align-items:center;gap:.75rem;padding:.65rem .9rem;border-radius:var(--radius);background:var(--bacio-surface);border:1px solid var(--bacio-border);font-size:.875rem;box-shadow:0 6px 18px #2b1b121f}.toast--success{background:var(--success-bg);color:var(--success-text)}.toast--error{background:var(--error-bg);color:var(--error-text)}.toast__close{border:none;background:transparent;font-size:1.1rem;line-height:1;color:inherit}@media(max-width:720px){.app-shell{flex-direction:column}.sidebar{width:100%;padding:1rem}.sidebar__brand{margin-bottom:1rem}.sidebar__list{display:flex;flex-wrap:wrap;gap:.25rem}.sidebar__item{width:auto;margin-bottom:0}.app-shell__content{padding:1.25rem 1rem}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.faq-page__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.faq-page__title{margin:0;font-size:1.5rem;color:var(--bacio-brown-dark)}.button--compact{width:auto;padding:.5rem .9rem}.button--ghost{background:transparent;color:var(--bacio-brown);border:1px solid var(--bacio-border)}.button--ghost:hover:not(:disabled){background:var(--bacio-cream)}.button--danger{background:var(--error-text)}.button--danger-ghost{background:transparent;color:var(--error-text);border:1px solid var(--error-text)}.faq-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;margin-bottom:1.25rem}.faq-filters .field{margin-bottom:0}@media(max-width:760px){.faq-filters{grid-template-columns:1fr}}.table-wrapper{overflow-x:auto;background:var(--bacio-surface);border:1px solid var(--bacio-border);border-radius:var(--radius)}.faq-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.9rem}.faq-table th{text-align:left;padding:.75rem 1rem;background:var(--bacio-cream);color:var(--bacio-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--bacio-border)}.faq-table td{padding:.75rem 1rem;border-bottom:1px solid var(--bacio-border);vertical-align:top}.faq-table tbody tr{cursor:pointer}.faq-table tbody tr:hover,.faq-table__row--selected{background:var(--bacio-cream)}.faq-table__question{background:none;border:none;padding:0;text-align:left;color:var(--bacio-brown-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}.faq-table__actor{color:var(--bacio-muted);font-size:.82rem;max-width:16ch;overflow-wrap:anywhere}.category-chip{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}.category-chip__dot{width:.6rem;height:.6rem;border-radius:50%;flex:none}.status-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.status-badge--draft{background:#efe9df;color:#6b5844}.status-badge--published{background:var(--success-bg);color:var(--success-text)}.status-badge--deactivated{background:#f3e6d6;color:#8a6320}.status-badge--archived{background:#e7e3de;color:#5f574f}.draft-indicator{display:inline-block;margin-top:.3rem;font-size:.72rem;font-weight:600;color:#8a6320}.retrieval-badge{display:inline-block;padding:.15rem .55rem;border-radius:var(--radius);font-size:.75rem;border:1px dashed var(--bacio-border);color:var(--bacio-muted)}.retrieval-badge--conditional{border-color:#c9a227;color:#8a6320}.pagination{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b1b1259;z-index:20}.drawer{position:fixed;top:0;right:0;bottom:0;width:640px;max-width:100vw;background:var(--bacio-surface);border-left:1px solid var(--bacio-border);z-index:21;display:flex;flex-direction:column}.drawer__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--bacio-border)}.drawer__title{margin:0;font-size:1.15rem;color:var(--bacio-brown-dark)}.drawer__close{background:none;border:none;font-size:1.5rem;line-height:1;color:var(--bacio-muted)}.drawer__meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem 1.25rem;border-bottom:1px solid var(--bacio-border)}.drawer__tabs{display:flex;gap:.25rem;padding:0 1.25rem;border-bottom:1px solid var(--bacio-border)}.drawer__tab{background:none;border:none;padding:.6rem .75rem;color:var(--bacio-muted);font-weight:600;border-bottom:2px solid transparent}.drawer__tab--active{color:var(--bacio-brown-dark);border-bottom-color:var(--bacio-brown)}.drawer__body{flex:1;overflow-y:auto;padding:1.25rem}.drawer__loading,.drawer__muted{padding:1.25rem;color:var(--bacio-muted)}.drawer__conflict{background:#fdf3e2;border:1px solid #e0c07a;border-radius:var(--radius);padding:.75rem;margin-bottom:1rem}.drawer__conflict p{margin:0 0 .6rem}.drawer__footer{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid var(--bacio-border)}.drawer__footer .button{width:auto;padding:.55rem 1rem}@media(max-width:700px){.drawer{width:100vw;border-left:none}}.field__textarea{resize:vertical;font-family:inherit;line-height:1.5}.faq-form .field{margin-bottom:1.1rem}.faq-view__notice{background:#fdf3e2;border-radius:var(--radius);padding:.6rem .75rem;margin:0 0 1rem;font-size:.88rem}.faq-view__list{margin:0}.faq-view__list dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--bacio-muted);margin-top:1rem}.faq-view__list dd{margin:.25rem 0 0;overflow-wrap:anywhere}.faq-view__answer{white-space:pre-wrap}.faq-view__links{margin:0;padding-left:1.1rem}.history{list-style:none;margin:0;padding:0}.history__item{display:grid;gap:.15rem;padding:.7rem 0;border-bottom:1px solid var(--bacio-border)}.history__event{font-weight:600}.history__when,.history__actor{font-size:.8rem;color:var(--bacio-muted);overflow-wrap:anywhere}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b1b1273;display:flex;align-items:center;justify-content:center;z-index:30;padding:1rem}.confirm{background:var(--bacio-surface);border-radius:var(--radius);padding:1.25rem;max-width:420px;width:100%}.confirm__title{margin:0 0 .5rem;font-size:1.1rem;color:var(--bacio-brown-dark)}.confirm__description{margin:0 0 1.25rem;color:var(--bacio-text)}.confirm__actions{display:flex;gap:.6rem;justify-content:flex-end}.confirm__actions .button{width:auto;padding:.55rem 1rem}.sidebar__item--active{background:var(--bacio-brown-dark)}.settings-panel{display:flex;flex-direction:column;gap:1rem}
