@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap";:root{--as-brand: #a3238e;--as-brand-dark: #8b1d6b;--as-brand-light: #f3e8f0;--as-brand-muted: #fdf2fa;--as-gold: #f59e0b;--as-gold-light: #fef3c7;--as-bg: #f8f9fa;--as-white: #ffffff;--as-text: #1f2937;--as-text-muted: #6b7280;--as-border: #e5e7eb;--as-success: #059669;--as-success-bg: #ecfdf5;--as-error: #dc2626;--as-warning: #d97706;--as-warning-bg: #fff7ed;--shadow-sm: 0 1px 2px rgba(17, 24, 39, .04);--radius: 10px;--radius-sm: 8px;font-family:Inter,system-ui,sans-serif;line-height:1.5;color:var(--as-text);background:var(--as-bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--as-bg)}a{color:var(--as-brand);text-decoration:none;font-weight:500}a:hover{color:var(--as-brand-dark)}.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:var(--as-white);border-right:1px solid var(--as-border);padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.5rem}.main-content{padding:1.75rem 2rem 2.5rem;min-width:0}.brand-logo{display:flex;flex-direction:column;gap:.65rem}.brand-logo-box{border:1px solid var(--as-border);border-radius:var(--radius);padding:.75rem 1rem;background:var(--as-white)}.brand-logo--login .brand-logo-box{border:none;padding:0;background:transparent}.brand-logo-img{display:block;width:100%;max-width:200px;height:auto}.brand-logo-img--compact{max-width:140px}.brand-product-name{font-size:.8rem;color:var(--as-text-muted);font-weight:500;letter-spacing:.02em}.login-card__product{margin:.5rem 0 0;text-align:center;font-size:.95rem;font-weight:600;color:var(--as-brand)}.nav-section__label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--as-text-muted);margin-bottom:.5rem;padding-left:.65rem;font-weight:600}.nav-links{display:grid;gap:.25rem}.nav-link{display:grid;gap:.1rem;color:var(--as-text);padding:.55rem .85rem;border-radius:var(--radius-sm);transition:background .15s,color .15s}.nav-link__text{font-size:.9rem;font-weight:600}.nav-link__hint{font-size:.72rem;font-weight:400;color:var(--as-text-muted);line-height:1.3}.nav-link:hover{background:var(--as-brand-light);color:var(--as-brand-dark)}.nav-link:hover .nav-link__hint{color:var(--as-brand-dark);opacity:.8}.nav-link--active{background:var(--as-brand);color:var(--as-white)}.nav-link--active .nav-link__hint{color:#ffffffbf}.sidebar-footer{margin-top:auto;padding-top:1rem;border-top:1px solid var(--as-border);display:grid;gap:.75rem}.user-chip{display:flex;gap:.75rem;align-items:center}.user-chip__avatar{width:36px;height:36px;border-radius:50%;background:var(--as-brand-light);color:var(--as-brand);display:grid;place-items:center;font-weight:700;font-size:.9rem}.user-chip__name{margin:0;font-size:.88rem;font-weight:600;color:var(--as-text)}.btn-sidebar-signout{background:var(--as-bg);color:var(--as-text-muted);border:1px solid var(--as-border);padding:.5rem .85rem;font-size:.85rem}.role-badge,.badge,.pill{display:inline-block;border-radius:999px;padding:.15rem .55rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.role-badge--admin{background:var(--as-brand-light);color:var(--as-brand-dark)}.role-badge--manager{background:#dbeafe;color:#1d4ed8}.role-badge--viewer{background:#f3f4f6;color:#4b5563}.role-pill{background:var(--as-brand-light);color:var(--as-brand-dark);padding:.35rem .85rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.role-pill--muted{background:#f3f4f6;color:var(--as-text-muted)}.pill--draft{background:var(--as-warning-bg);color:var(--as-warning)}.pill--confirmed{background:var(--as-success-bg);color:var(--as-success)}.pill--archived{background:#f3f4f6;color:#6b7280}.status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;border-radius:999px;background:var(--as-white);border:1px solid var(--as-border);font-size:.8rem;font-weight:500;color:var(--as-text-muted)}.status-dot{width:8px;height:8px;border-radius:50%;background:#9ca3af}.status-dot--healthy{background:#10b981}.card{background:var(--as-white);border:1px solid var(--as-border);border-radius:var(--radius);padding:1.25rem 1.5rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page-header h1{margin:0;font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:600;color:var(--as-text)}.page-subtitle{margin:.35rem 0 0;color:var(--as-text-muted);font-size:.95rem}.page-header__actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.welcome-banner{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.25rem;background:linear-gradient(135deg,var(--as-brand-muted) 0%,var(--as-white) 100%);border-color:#a3238e26}.welcome-banner h2{margin:0 0 .35rem;font-family:Playfair Display,Georgia,serif;font-size:1.25rem;color:var(--as-brand-dark)}.welcome-banner p{margin:0;font-size:.9rem;color:var(--as-text-muted);max-width:52ch}.workflow-card{margin-bottom:1.25rem}.workflow-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.workflow-card__header h3{margin:0 0 .25rem;font-size:1rem;font-weight:600}.workflow-alert{background:var(--as-warning-bg);color:var(--as-warning);padding:.45rem .85rem;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap}.workflow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.workflow-steps--two{grid-template-columns:repeat(2,1fr)}@media(max-width:900px){.workflow-steps{grid-template-columns:repeat(2,1fr)}.workflow-steps--two{grid-template-columns:1fr}}@media(max-width:520px){.workflow-steps{grid-template-columns:1fr}}.workflow-step{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:center;padding:.85rem;border:1px solid var(--as-border);border-radius:var(--radius-sm);background:var(--as-bg)}.workflow-step--done{background:var(--as-success-bg);border-color:#a7f3d0}.workflow-step--current{background:var(--as-brand-muted);border-color:#a3238e40}.workflow-step--pending{opacity:.65}.workflow-step__num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:700;background:var(--as-white);border:1px solid var(--as-border);color:var(--as-text-muted)}.workflow-step--done .workflow-step__num{background:var(--as-success);border-color:var(--as-success);color:#fff}.workflow-step--current .workflow-step__num{background:var(--as-brand);border-color:var(--as-brand);color:#fff}.workflow-step__body{display:grid;gap:.1rem;min-width:0}.workflow-step__body strong{font-size:.88rem}.workflow-step__body span{font-size:.75rem;color:var(--as-text-muted)}.workflow-step__link{font-size:.78rem;font-weight:600;white-space:nowrap}.stat-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.25rem}.stat-grid--dashboard{grid-template-columns:repeat(4,1fr)}@media(max-width:1100px){.stat-grid--dashboard{grid-template-columns:repeat(2,1fr)}}.stat-card{padding:1.15rem 1.25rem;border-radius:var(--radius);border:1px solid var(--as-border);background:var(--as-white)}.stat-card__label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--as-text-muted);font-weight:600;margin-bottom:.5rem}.stat-card__value{font-size:2.25rem;font-weight:700;line-height:1.1;color:var(--as-text)}.stat-card--brand .stat-card__value{color:var(--as-brand)}.stat-card--success .stat-card__value{color:var(--as-success)}.stat-card--warning .stat-card__value{color:var(--as-warning)}.stat-card--muted .stat-card__value{color:var(--as-text-muted)}.stat-card__hint{margin:.4rem 0 0;font-size:.8rem;color:var(--as-text-muted)}.stat-card__link{display:inline-block;margin-top:.65rem;font-size:.82rem;font-weight:600;color:var(--as-brand)}.dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1.25rem}.dashboard-panel--wide{min-width:0}.panel-subtitle{margin:.2rem 0 0;font-size:.82rem}@media(max-width:1024px){.app-layout{grid-template-columns:1fr}.sidebar{display:none}.dashboard-grid{grid-template-columns:1fr}}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.panel-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--as-text)}.panel-link{font-size:.85rem}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.quick-actions--stack{grid-template-columns:1fr}.quick-actions--row{grid-template-columns:repeat(2,1fr)}@media(max-width:640px){.quick-actions--row{grid-template-columns:1fr}}.quick-action{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--as-bg);border:1px solid var(--as-border);border-radius:var(--radius-sm);color:var(--as-text);transition:border-color .15s,background .15s}.quick-action span:last-child{display:grid;gap:.15rem;min-width:0}.quick-action strong{font-size:.88rem;font-weight:600}.quick-action small{font-size:.75rem;color:var(--as-text-muted);font-weight:400}.quick-action--muted{opacity:.9}.quick-action:hover{border-color:var(--as-brand);background:var(--as-brand-muted);color:var(--as-brand-dark)}.quick-action__icon{width:28px;height:28px;border-radius:50%;background:var(--as-white);display:grid;place-items:center;font-weight:700;color:var(--as-brand);border:1px solid var(--as-border)}.settings-tabs{display:flex;gap:.35rem;margin-bottom:1.25rem;border-bottom:1px solid var(--as-border)}.tab{background:transparent;color:var(--as-text-muted);border:none;border-bottom:2px solid transparent;border-radius:0;padding:.65rem 1.1rem;font-weight:600;font-size:.9rem;margin-bottom:-1px}.tab--active{color:var(--as-brand);border-bottom-color:var(--as-brand);background:transparent}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media(max-width:768px){.settings-grid{grid-template-columns:1fr}}.settings-card h3{margin:0 0 1rem;font-size:1.05rem;color:var(--as-text)}.profile-dl{display:grid;gap:.75rem}.profile-dl>div{display:flex;justify-content:space-between;gap:1rem}.profile-dl dt{color:var(--as-text-muted);font-weight:500}.profile-dl dd{margin:0;font-weight:600}.perm-grid{display:grid;gap:.75rem}.perm-card{padding:1rem;background:var(--as-bg);border-radius:var(--radius-sm);border:1px solid var(--as-border)}.perm-card p{margin:.5rem 0 0;font-size:.85rem;color:var(--as-text-muted)}.row-disabled{opacity:.55}.login-page{min-height:100vh;display:grid;place-items:center;padding:2rem;position:relative}.login-page__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 15% 40%,rgba(163,35,142,.06) 0%,transparent 50%),radial-gradient(ellipse at 85% 15%,rgba(245,158,11,.08) 0%,transparent 40%),var(--as-bg)}.login-card{position:relative;width:min(440px,100%);padding:2rem;text-align:center}.login-card .brand-logo{align-items:center}.login-card__intro{color:var(--as-text-muted);font-size:.9rem;margin:.75rem 0 1.5rem;line-height:1.6}.login-card__footer{margin:1.25rem 0 0;font-size:.75rem}.login-form{text-align:left}.grid{display:grid;gap:1rem}label{display:grid;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--as-text)}input,select,textarea{border:1px solid var(--as-border);border-radius:var(--radius-sm);padding:.65rem .85rem;font:inherit;background:var(--as-white);transition:border-color .15s,box-shadow .15s}input:focus,select:focus{outline:none;border-color:var(--as-brand);box-shadow:0 0 0 3px #a3238e1f}button,.btn-primary{border:0;border-radius:var(--radius-sm);background:var(--as-brand);color:#fff;font:inherit;font-weight:600;padding:.7rem 1.15rem;cursor:pointer;transition:background .15s,opacity .15s}button:hover:not(:disabled){background:var(--as-brand-dark)}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{width:100%}.btn-primary--inline{width:auto;display:inline-block;padding:.55rem 1rem;font-size:.88rem}.btn-secondary{background:var(--as-bg);color:var(--as-text);border:1px solid var(--as-border)}.btn-ghost{background:transparent;color:var(--as-text-muted);border:1px solid var(--as-border);padding:.5rem .85rem;font-size:.85rem}.btn-ghost--sm{color:var(--as-brand);border-color:var(--as-border);background:var(--as-white);font-size:.8rem;padding:.35rem .65rem}.btn-link{background:transparent;color:var(--as-brand);padding:0;font-weight:600}.btn-link.danger{color:var(--as-error)}.button-link,a.button-link{display:inline-block;background:var(--as-brand);color:#fff!important;border-radius:var(--radius-sm);padding:.7rem 1.15rem;font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--as-border)}th{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--as-text-muted);font-weight:700;background:var(--as-bg)}.table-compact th,.table-compact td{padding:.55rem .85rem;font-size:.88rem}code{font-family:Consolas,monospace;font-size:.85em;background:var(--as-bg);padding:.1rem .35rem;border-radius:4px;color:var(--as-brand-dark)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182773;display:grid;place-items:center;padding:1rem;z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{width:min(480px,100%);max-height:90vh;overflow:auto}.modal-wide{width:min(760px,100%)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.banner{padding:.75rem 1rem;border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.9rem;font-weight:500}.banner--error,.banner.error{background:#fef2f2;border:1px solid #fecaca;color:var(--as-error)}.banner--success{background:var(--as-success-bg);border:1px solid #a7f3d0;color:var(--as-success)}.error{color:var(--as-error);font-size:.9rem}.muted{color:var(--as-text-muted)}.empty-state{text-align:center;padding:2rem 1.5rem}.empty-state__icon{font-size:1.5rem;color:var(--as-brand);margin-bottom:.5rem}.empty-state h4{margin:0 0 .35rem;font-size:1rem;font-weight:600}.empty-state p{margin:0 0 1rem;font-size:.88rem;color:var(--as-text-muted);max-width:36ch;margin-left:auto;margin-right:auto}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:240px;color:var(--as-text-muted)}.page-loading__spinner{width:32px;height:32px;border:3px solid var(--as-brand-light);border-top-color:var(--as-brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.shell{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.filter-bar{display:flex;align-items:end;gap:1rem;margin-bottom:1rem;padding:1rem}.compare-panel{margin-bottom:1rem}.compare-selects{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.delta-up{color:var(--as-warning);font-weight:600}.delta-down{color:var(--as-success);font-weight:600}.back-link{display:inline-block;margin-bottom:.5rem;font-size:.9rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.form-grid .full-width{grid-column:1 / -1}.form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.composition-lines{display:grid;gap:.75rem}.composition-line{padding:1rem}.line-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem}.line-fields{display:grid;grid-template-columns:2fr 1fr;gap:.75rem}.line-actions{display:flex;gap:.5rem}.batch-banner{background:var(--as-gold-light);border:1px solid var(--as-gold);border-radius:var(--radius-sm);padding:1rem}.cost-summary{display:grid;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--as-border)}.cost-summary>div{display:flex;justify-content:space-between}.cost-summary .selling-price{font-weight:700;font-size:1.1rem;color:var(--as-brand)}.cost-summary dt,.cost-summary dd{margin:0}.product-form-layout{display:grid;grid-template-columns:1fr 320px;gap:1.25rem;align-items:start;margin-bottom:1rem}@media(max-width:1024px){.product-form-layout{grid-template-columns:1fr}}.live-price-panel{position:sticky;top:1rem}.live-price-panel h3{margin:0 0 .25rem;font-size:1rem}.composition-quick-add{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.composition-group{margin-bottom:1.25rem}.composition-group__title{margin:0 0 .65rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--as-brand-dark);font-weight:700}.composition-line__type{font-weight:600;font-size:.9rem}.cost-breakdown--compact .cost-summary{margin-top:0;padding-top:0;border-top:none}.cost-breakdown--compact .selling-price dd{font-size:1.35rem;color:var(--as-brand)}.product-history{margin-top:1.5rem}.history-ref{font-size:.82rem}.pack-pricing__header{margin-bottom:.75rem}.pack-pricing__header h3{margin:0 0 .25rem;font-size:1rem}.pack-pricing__table{width:100%;border-collapse:collapse}.pack-pricing__table th,.pack-pricing__table td{padding:.5rem .65rem;border-bottom:1px solid var(--as-border);font-size:.88rem}.pack-pricing__table th{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--as-text-muted);background:var(--as-bg)}.pack-pricing__table tr:last-child td{font-weight:600}.pack-pricing-hint{font-size:.82rem;margin:0}.live-price-panel{display:grid;gap:1rem}.dual-price strong{color:var(--as-brand-dark)}.products-pricing-table{font-size:.88rem}.products-pricing-table th,.products-pricing-table td{white-space:nowrap}.composition-gram-total{margin:0 0 .75rem;padding:.5rem .75rem;background:var(--as-bg);border-radius:var(--as-radius-sm);font-size:.88rem}.composition-gram-total--warn{background:#fff4f6;color:var(--as-brand-dark)}.composition-rate-hint{margin:.25rem 0 0;font-size:.8rem;grid-column:1 / -1}
