:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111;background:#f5f5f5;font-size:16px;--red:#e20817;--black:#000;--white:#fff;--line:#dedede;--muted:#696969}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#000;color:#fff;padding:26px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand-panel{padding:8px 4px 30px}.brand-panel img{width:170px;max-width:100%}.sidebar nav{display:grid;gap:8px}.sidebar nav a,.logout{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:14px 15px;border-radius:12px;font-weight:650;border:0;background:transparent;cursor:pointer;font-size:1rem}.sidebar nav a:hover,.sidebar nav a.active{background:#1d1d1d}.sidebar nav a.active{box-shadow:inset 4px 0 0 var(--red)}.logout{margin-top:auto}.main{min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;color:var(--muted)}.topbar b{color:#000}.page{padding:28px;max-width:1480px;margin:auto}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.page h1{font-size:2rem;margin:0 0 6px;line-height:1.1}.page h2{font-size:1.2rem;margin:0 0 18px}.page p{color:var(--muted);margin:0;line-height:1.5}.btn{min-height:44px;border:1px solid #cfcfcf;background:#fff;border-radius:10px;padding:10px 16px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:700;cursor:pointer;text-decoration:none;color:#111}.btn.primary{background:var(--red);color:#fff;border-color:var(--red)}.btn.full{width:100%}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px;box-shadow:0 3px 16px #00000008}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.one{grid-template-columns:1fr}.form-grid label{display:grid;gap:7px;font-size:.9rem;font-weight:700}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.toolbar input,.add-row select,.item-row input{width:100%;min-height:46px;border:1px solid #cfcfcf;border-radius:9px;padding:10px 12px;background:#fff;color:#111}.form-grid textarea{min-height:90px;resize:vertical}.form-grid small{font-weight:400;color:var(--muted)}.toolbar{background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 12px;margin-bottom:16px}.toolbar input{border:0;outline:0}.cards-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.client-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;align-items:center;gap:14px}.client-card h3{margin:0 0 4px}.client-card p{color:#222}.avatar{width:48px;height:48px;border-radius:50%;background:#000;color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.2rem;border-bottom:4px solid var(--red)}.empty-state{background:#fff;border:1px dashed #bbb;border-radius:16px;padding:48px;text-align:center}.quote-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.stack{min-width:0}.summary-card{background:#000;color:#fff;border-radius:16px;padding:22px;position:sticky;top:90px}.summary-card>span{color:#bbb;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800}.summary-card>div{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #2c2c2c}.summary-card small{font-size:.9rem}.summary-card strong{font-size:1rem}.summary-card .grand-total{border-bottom:0;margin-bottom:12px}.summary-card .grand-total strong{font-size:1.55rem;color:#fff}.summary-card .grand-total small{color:#ff5661;font-weight:900}.privacy-note{font-size:.78rem!important;color:#aaa!important;margin-top:15px!important}.add-row{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:15px}.add-row select{min-height:46px;border:1px solid #ccc;border-radius:9px;padding:0 12px}.items{display:grid;gap:8px}.item-row{display:grid;grid-template-columns:minmax(240px,1fr) 80px 120px 110px 44px;gap:8px;align-items:center}.item-row b{text-align:right}.icon-btn{border:0;background:transparent;cursor:pointer;width:42px;height:42px;border-radius:8px}.danger-text{color:#b00020}.login-screen{min-height:100vh;background:#000;display:grid;place-items:center;padding:24px}.login-card{background:#fff;border-radius:20px;padding:34px;width:min(440px,100%);border-top:6px solid var(--red)}.login-logo{width:190px;max-width:70%;margin-bottom:20px}.login-card h1{font-size:1.8rem;margin:0 0 8px}.login-card p{color:var(--muted);margin:0 0 24px}.demo-note,.alert{margin-top:14px;padding:12px;border-radius:10px;font-size:.85rem}.demo-note{background:#f4f4f4}.alert.danger{background:#ffe7e8;color:#95000d}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:14px}.brand-panel{padding:4px 2px 12px}.brand-panel img{width:130px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar nav a{justify-content:center;font-size:.88rem;padding:11px 8px}.logout{display:none}.topbar{height:58px;padding:0 16px}.page{padding:18px}.quote-layout{grid-template-columns:1fr}.summary-card{position:static}.page-head{align-items:stretch}.item-row{grid-template-columns:1fr 70px 110px 42px}.item-row b{grid-column:2/4}.item-desc{grid-column:1/-1}}@media(max-width:600px){:root{font-size:16px}.sidebar nav a{font-size:0}.sidebar nav a svg{width:23px;height:23px}.page-head{flex-direction:column}.page h1{font-size:1.65rem}.form-grid,.add-row{grid-template-columns:1fr}.item-row{grid-template-columns:1fr 1fr 42px}.item-row input:first-child{grid-column:1/-1}.item-row b{grid-column:1/3}.panel{padding:17px}.btn{min-height:48px}.summary-card{padding:20px}.topbar span{display:none}}.item-card{border:1px solid #e2e2e2;border-radius:14px;padding:14px;margin-top:12px;background:#fff}.item-main{display:flex;gap:10px;align-items:center}.item-main .item-desc{font-weight:800;font-size:1rem}.item-detail{width:100%;margin-top:10px;min-height:92px;line-height:1.45;background:#fafafa}.item-numbers{display:grid;grid-template-columns:110px 120px minmax(150px,1fr) 130px;gap:10px;align-items:end;margin-top:10px}.item-numbers label{font-size:.82rem;font-weight:700}.item-numbers strong{font-size:1.15rem;text-align:right;padding:13px 0}.planner-base{display:block;margin-top:10px;padding:12px;background:#fff3f4;border-left:4px solid #e20817;border-radius:8px}.planner-base input{max-width:220px;margin-top:6px}.planner-base small{display:block;margin-top:5px}.contract-note{display:flex!important;flex-direction:column;gap:4px!important;background:#f5f5f5;padding:12px!important;border-radius:10px}.contract-note strong{font-size:1.05rem!important}.contract-note small:last-child{color:#666;line-height:1.35}@media(max-width:720px){.item-numbers{grid-template-columns:1fr 1fr}.item-numbers strong{text-align:left}.item-card{padding:12px}.item-detail{font-size:16px}}.quote-history-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.search-box{display:flex;align-items:center;gap:8px;border:1px solid #d8d8d8;border-radius:10px;padding:0 12px;background:#fff;max-width:620px;width:100%}.search-box input{border:0;outline:0;width:100%;padding:11px 0;font:inherit;background:transparent}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background:#000;color:#fff;text-align:left;padding:12px 10px;white-space:nowrap}.data-table td{padding:12px 10px;border-bottom:1px solid #e8e8e8;vertical-align:middle}.data-table td small{display:block;color:#777;margin-top:3px}.data-table tbody tr:hover{background:#fafafa}.money-cell{text-align:right;white-space:nowrap}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#f1f1f1;font-size:12px;font-weight:700}.btn.compact{min-height:36px;padding:7px 10px;font-size:13px}.action-cell{text-align:right;white-space:nowrap}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.detail-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.detail-fields>div{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid #eee}.detail-fields small,.detail-notes small{color:#777;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:800}.detail-fields strong{font-size:15px}.detail-fields span{color:#666;font-size:13px}.detail-items{display:grid;gap:10px}.detail-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;border:1px solid #e3e3e3;border-radius:12px;padding:14px}.detail-item p{white-space:pre-line;font-size:13px;margin-top:7px;color:#555}.detail-item-numbers{display:grid;grid-template-columns:95px 105px 115px;align-items:start;gap:10px;text-align:right;font-size:13px}.detail-item-numbers strong{font-size:14px}.detail-notes{margin-top:16px;padding:14px;background:#fafafa;border-radius:10px}.detail-notes p{white-space:pre-line;margin-top:6px}.detail-summary .status-control{display:block;border-bottom:0;padding-bottom:0}.status-control label{display:grid;gap:7px;font-size:.82rem;font-weight:800;margin-bottom:10px}.status-control select{width:100%;min-height:44px;border-radius:9px;border:1px solid #444;padding:9px 10px;background:#fff;color:#111}.status-control .btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:900px){.detail-grid,.detail-fields,.detail-item{grid-template-columns:1fr}.detail-item-numbers{grid-template-columns:repeat(3,1fr);text-align:left}}.btn.project-action{margin-top:12px;background:#fff;color:#111;border-color:#fff}.btn.project-action:hover{background:#f1f1f1}.converted-box{display:flex!important;justify-content:flex-start!important;align-items:center;gap:10px!important;background:#171717;border:1px solid #333!important;border-radius:10px;padding:13px!important;margin-top:8px}.converted-box div{display:flex;flex-direction:column;gap:2px}.converted-box small{color:#aaa}.sidebar nav{overflow:auto}.production-panel .detail-title-row>div h2{margin-bottom:4px}.count-badge{min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:#000;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.mini-empty{padding:18px;border:1px dashed #ccc;border-radius:10px;color:#777;margin-bottom:16px}.production-list{display:grid;gap:8px;margin-bottom:16px}.production-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e6e6e6;border-radius:11px;padding:12px 10px 12px 14px}.production-row>div{display:flex;flex-direction:column;gap:3px}.production-row span{font-size:13px;color:#333}.production-row small{font-size:12px;color:#777}.production-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;padding-top:14px;border-top:1px solid #eee}.production-form label{display:grid;gap:6px;font-size:12px;font-weight:800}.production-form label.wide{grid-column:1/3}.production-form input{width:100%;min-height:44px;border:1px solid #cfcfcf;border-radius:9px;padding:9px 11px}.equipment-form{grid-template-columns:minmax(0,1fr) 120px auto}.module-note{font-size:12px!important;margin-top:13px!important}.internal-notes{width:100%;min-height:150px;border:1px solid #cfcfcf;border-radius:10px;padding:12px;resize:vertical;line-height:1.5}.actions.end{justify-content:flex-end;margin-top:12px}@media(max-width:760px){.production-form,.equipment-form{grid-template-columns:1fr}.production-form label.wide{grid-column:auto}.production-form .btn{width:100%}}.inventory-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.inventory-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 18px;display:flex;flex-direction:column;gap:4px}.inventory-stat small{color:#777;font-size:12px;font-weight:750}.inventory-stat strong{font-size:1.35rem}.inventory-form-panel .detail-title-row>div h2{margin-bottom:4px}.inventory-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.inventory-form label{display:grid;gap:6px;font-size:12px;font-weight:800}.inventory-form label span{font-weight:500;color:#888}.inventory-form label.wide{grid-column:1/-1}.inventory-form input,.inventory-form select,.inventory-form textarea{width:100%;min-height:44px;border:1px solid #cfcfcf;border-radius:9px;padding:9px 11px;background:#fff}.inventory-form textarea{min-height:86px;resize:vertical}.inventory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:20px 0 12px}.archive-toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;white-space:nowrap}.archive-toggle input{width:17px;height:17px}.inventory-table-wrap{padding:0;overflow:hidden}.inventory-table td{vertical-align:top}.inventory-table td strong{font-size:13px}.inventory-actions{display:flex;justify-content:flex-end}.equipment-status{display:inline-block;padding:5px 9px;border-radius:999px;background:#eee;font-size:11px;font-weight:800;white-space:nowrap}.status-disponible{background:#e8f6ed;color:#176b38}.status-reservado{background:#fff4d6;color:#7a5800}.status-en-uso{background:#e9efff;color:#234aa5}.status-mantenimiento{background:#fff0e4;color:#9a4e00}.status-baja{background:#f0f0f0;color:#666}@media(max-width:1050px){.inventory-stats,.inventory-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.inventory-stats,.inventory-form{grid-template-columns:1fr}.inventory-form label.wide{grid-column:auto}.inventory-toolbar{align-items:stretch;flex-direction:column}.archive-toggle{padding-left:4px}}.reservation-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.45fr) minmax(150px,.45fr) auto;gap:10px;align-items:end;padding-top:14px;border-top:1px solid #eee}.reservation-form label{display:grid;gap:6px;font-size:12px;font-weight:800}.reservation-form label.wide{grid-column:1/-1}.reservation-form input,.reservation-form select{width:100%;min-height:44px;border:1px solid #cfcfcf;border-radius:9px;padding:9px 11px;background:#fff}.reservation-row small{display:flex;align-items:center;gap:5px}.availability-alert{margin-top:12px;padding:11px 13px;border-radius:10px;font-size:13px}.availability-alert.ok{background:#e8f6ed;color:#176b38;border:1px solid #c9ead4}.availability-alert.danger{background:#fff0f1;color:#9a1220;border:1px solid #f3c9cd}.legacy-equipment-panel{border-style:dashed}.count-badge.muted{background:#777}@media(max-width:850px){.reservation-form{grid-template-columns:1fr 1fr}.reservation-form label.wide,.reservation-form .btn{grid-column:1/-1}}@media(max-width:600px){.reservation-form{grid-template-columns:1fr}.reservation-form label.wide,.reservation-form .btn{grid-column:auto}}.sessions-panel{overflow:hidden}.recurring-generator{display:grid;grid-template-columns:minmax(260px,1fr) 180px auto;gap:14px;align-items:end;background:#f7f7f7;border:1px solid #e6e6e6;border-radius:12px;padding:14px;margin:14px 0}.recurring-generator div{display:flex;flex-direction:column;gap:5px}.recurring-generator small{color:#666;line-height:1.4}.session-list{display:flex;flex-direction:column;gap:8px;margin:14px 0}.session-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto 20px;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid #ddd;background:#fff;border-radius:12px;padding:12px;cursor:pointer}.session-card:hover,.session-card.active{border-color:#111;box-shadow:0 0 0 1px #111 inset}.session-card.active{background:#fafafa}.session-card div{display:flex;flex-direction:column;gap:3px;min-width:0}.session-card div small{color:#666}.session-seq{font-weight:900;font-size:.78rem;color:#e20817}.manual-session-form{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto;gap:10px;align-items:end;border-top:1px solid #eee;padding-top:14px;margin-top:14px}.session-detail-panel{border-left:4px solid #e20817}.session-detail-panel textarea{min-height:84px}.production-panel h2{display:flex;align-items:center;gap:8px}.legacy-block{display:flex;flex-direction:column;gap:5px;padding:10px 0;border-top:1px solid #eee}.legacy-block:first-of-type{border-top:0}.legacy-block small{color:#555}.detail-summary .privacy-note{display:flex;gap:7px;align-items:flex-start}@media(max-width:900px){.recurring-generator,.manual-session-form{grid-template-columns:1fr}.session-card{grid-template-columns:64px 1fr}.session-card .status-pill,.session-card>svg{display:none}}.btn.danger-outline{color:#b00020;border-color:#e6b8bf;background:#fff}.btn.danger-outline:hover{background:#fff3f4}.btn.danger-outline:disabled{opacity:.5;cursor:not-allowed}.session-card.cancelled{opacity:.62;background:#fafafa}.session-card.cancelled .session-seq,.session-card.cancelled strong{text-decoration:line-through}.recurring-generator .btn:disabled{opacity:.55;cursor:not-allowed}.calendar-page{max-width:none}.calendar-toolbar{padding:14px 16px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}.calendar-nav{display:flex;align-items:center;gap:8px}.calendar-nav strong{font-size:18px;margin-left:6px;min-width:180px}.calendar-view-toggle{display:flex;border:1px solid #ddd;border-radius:10px;overflow:hidden}.calendar-view-toggle button{border:0;background:#fff;padding:9px 14px;font-weight:700;cursor:pointer}.calendar-view-toggle button.active{background:#000;color:#fff}.calendar-filters{display:flex;gap:10px;align-items:center;flex:1;justify-content:flex-end}.calendar-filters select{min-width:170px;padding:10px 12px;border:1px solid #ddd;border-radius:9px;background:#fff}.compact-search{margin:0;max-width:360px}.calendar-month{overflow:hidden;padding:0}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f6f6f6;border-bottom:1px solid #e5e5e5}.calendar-weekdays>div{padding:10px 12px;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-height:138px;border-right:1px solid #ececec;border-bottom:1px solid #ececec;padding:8px;background:#fff;min-width:0}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#fafafa;color:#aaa}.calendar-day.today{box-shadow:inset 0 0 0 2px #e20817}.calendar-day-number{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-weight:800}.calendar-day-number small{background:#111;color:#fff;border-radius:99px;padding:2px 6px;font-size:10px}.calendar-events{display:flex;flex-direction:column;gap:4px}.calendar-event{width:100%;text-align:left;border:0;border-left:3px solid #111;background:#f4f4f4;border-radius:5px;padding:5px 6px;cursor:pointer;overflow:hidden}.calendar-event:hover{background:#ececec}.calendar-event b,.calendar-event span,.calendar-event small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event b{font-size:10px}.calendar-event span{font-size:11px;font-weight:800}.calendar-event small{font-size:9px;color:#666}.calendar-event.status-en-producción{border-left-color:#e20817}.calendar-event.status-completada{opacity:.62}.calendar-event.status-cancelada{text-decoration:line-through;opacity:.45}.calendar-more{border:0;background:transparent;text-align:left;font-size:10px;font-weight:800;cursor:pointer}.calendar-week{padding:0;overflow:auto}.calendar-week-columns{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));min-height:430px}.week-column{border-right:1px solid #ececec;background:#fff}.week-column:last-child{border-right:0}.week-column>header{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f6f6f6;border-bottom:1px solid #e5e5e5}.week-column>header span{font-size:20px;font-weight:900}.week-column.today>header{background:#111;color:#fff}.week-column>div{padding:8px;display:flex;flex-direction:column;gap:7px}.week-event{border:1px solid #ddd;border-left:4px solid #e20817;background:#fff;border-radius:8px;text-align:left;padding:9px;cursor:pointer}.week-event b,.week-event span,.week-event small{display:block}.week-event b{font-size:11px}.week-event span{font-weight:800;margin:3px 0}.week-event small{color:#666}.week-empty{color:#999;padding:8px}.calendar-bottom-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px;margin-top:16px}.unscheduled-panel,.calendar-summary{padding:18px}.section-title{display:flex;justify-content:space-between;align-items:flex-start}.section-title h2,.calendar-summary h2{margin:0 0 4px}.section-title p{margin:0;color:#777}.count-badge{background:#111;color:#fff;border-radius:99px;padding:6px 10px;font-weight:800}.unscheduled-list{margin-top:12px;display:flex;flex-direction:column}.unscheduled-list a{display:grid;grid-template-columns:70px 1fr 20px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #eee;color:inherit;text-decoration:none}.unscheduled-list a>span{font-weight:900;color:#e20817}.unscheduled-list strong,.unscheduled-list small{display:block}.unscheduled-list small{color:#777;margin-top:2px}.calendar-summary>div{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee;padding:13px 0}.calendar-summary>div span{display:flex;align-items:center;gap:8px}.calendar-summary>div strong{font-size:22px}.calendar-detail-backdrop{position:fixed;inset:0;background:#0000006b;z-index:50;display:flex;justify-content:flex-end}.calendar-detail{width:min(440px,92vw);height:100%;background:#fff;padding:28px;overflow:auto;box-shadow:-12px 0 40px #0003;position:relative}.calendar-detail-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:30px;cursor:pointer}.calendar-detail .eyebrow{font-size:12px;font-weight:900;color:#e20817;text-transform:uppercase}.calendar-detail h2{font-size:28px;margin:8px 36px 6px 0}.calendar-project-line{color:#666}.detail-meta{display:flex;flex-direction:column;gap:10px;padding:14px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.detail-meta span{display:flex;align-items:center;gap:8px}.detail-section{margin:22px 0}.detail-section h3{display:flex;align-items:center;gap:8px;margin-bottom:10px}.detail-section>p{color:#777}.detail-row{padding:9px 0;border-bottom:1px solid #eee}.detail-row strong,.detail-row span{display:block}.detail-row span{font-size:13px;color:#666;margin-top:2px}@media(max-width:1050px){.calendar-grid{min-width:980px}.calendar-month{overflow:auto}.calendar-bottom-grid{grid-template-columns:1fr}.calendar-filters{width:100%;justify-content:flex-start}.compact-search{max-width:none;flex:1}}.page-actions{display:flex;gap:8px;align-items:center}.calendar-conflict-alert{display:flex;align-items:center;gap:9px;background:#fff1f2;border:1px solid #f2b7bd;color:#8b0b17;border-radius:10px;padding:10px 13px;margin-bottom:14px}.calendar-conflict-alert span{color:#6d4045;font-size:13px}.calendar-event.has-conflict,.week-event.has-conflict{border-color:#e20817;background:#fff1f2}.calendar-event b,.week-event b{display:flex;align-items:center;gap:5px}.week-column>header>div{display:flex;align-items:center;gap:7px}.week-column>header em{font-style:normal;font-size:9px;letter-spacing:.08em;background:#e20817;color:#fff;border-radius:99px;padding:2px 5px}.summary-danger{color:#b40012}.detail-conflict{margin:16px 0;padding:12px;border-radius:9px;background:#fff1f2;border:1px solid #f2b7bd}.detail-conflict h3{display:flex;align-items:center;gap:7px;color:#b40012;margin:0 0 8px}.detail-conflict p{margin:5px 0;font-size:13px}.calendar-detail .btn.full{margin-top:10px;justify-content:center}.calendar-day.outside .calendar-event{opacity:.55}.calendar-day.outside .calendar-event:hover{opacity:.8}.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.finance-kpis>div,.project-finance-summary>div{background:#fff;border:1px solid #e5e5e5;border-radius:14px;padding:18px}.finance-kpis span,.project-finance-summary span{display:block;color:#666;font-size:13px;margin-bottom:7px}.finance-kpis strong{font-size:24px}.finance-layout{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.65fr);gap:18px;align-items:start}.finance-detail{display:grid;gap:18px}.finance-project-list{display:grid;gap:8px;margin-top:12px}.finance-project{border:1px solid #e7e7e7;background:#fff;border-radius:12px;padding:14px;text-align:left;display:flex;justify-content:space-between;gap:16px;cursor:pointer;font:inherit}.finance-project:hover,.finance-project.active{border-color:#e20817;box-shadow:inset 3px 0 #e20817}.finance-project div:first-child{display:grid;gap:3px}.finance-project span,.finance-project small{color:#666}.finance-project-values{text-align:right;display:grid;gap:5px;white-space:nowrap}.project-finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.project-finance-summary strong{font-size:20px}.payment-list,.payment-history{display:grid;gap:8px;margin-top:14px}.payment-history{border-top:1px solid #eee;padding-top:18px}.payment-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #e8e8e8;border-radius:10px;padding:12px 14px}.payment-row>div{display:grid;gap:3px}.payment-row span,.payment-row small{color:#666}.payment-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end;margin-top:16px}.payment-form .wide{grid-column:span 2}.payment-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.payment-form input,.payment-form select{width:100%}.finance-detail .empty-state svg{margin:auto}@media(max-width:1050px){.finance-kpis{grid-template-columns:repeat(2,1fr)}.finance-layout{grid-template-columns:1fr}.payment-form{grid-template-columns:1fr 1fr}}@media(max-width:720px){.finance-kpis,.project-finance-summary,.payment-form{grid-template-columns:1fr}.payment-form .wide{grid-column:auto}}.plan-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.auto-plan-note{margin:10px 0 14px;padding:11px 13px;border:1px solid #e6e6e6;background:#fafafa;border-radius:10px;font-size:13px;color:#555}.auto-plan-note strong{color:#111}.finance-filters{display:flex;gap:10px;align-items:center}.finance-filters .search-box{flex:1;margin:0}.finance-filters select,.finance-filters input[type=month]{min-height:44px;border:1px solid #ddd;border-radius:10px;background:#fff;padding:0 12px;font:inherit}.detail-actions,.payment-row-actions{display:flex;gap:8px;align-items:center}@media(max-width:900px){.finance-filters{flex-wrap:wrap}.finance-filters .search-box{flex-basis:100%}}.dashboard-page{max-width:1480px}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.dashboard-kpis>a{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;text-decoration:none;color:#111;display:grid;gap:7px;box-shadow:0 3px 16px #00000006}.dashboard-kpis>a:hover{border-color:#bbb}.dashboard-kpis span{display:flex;align-items:center;gap:8px;color:#555;font-size:13px;font-weight:750}.dashboard-kpis strong{font-size:25px}.dashboard-kpis small{color:#777}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:18px}.dashboard-grid.lower{grid-template-columns:1fr 1fr}.dashboard-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.dashboard-section-head h2{margin-bottom:4px}.dashboard-agenda{display:grid}.dashboard-agenda>a{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:15px;align-items:center;padding:13px 0;border-top:1px solid #eee;color:inherit;text-decoration:none}.dashboard-agenda>a:first-child{border-top:0}.dashboard-date{display:grid;gap:3px}.dashboard-date b{font-size:13px;text-transform:capitalize}.dashboard-date span{font-size:12px;color:#e20817;font-weight:850}.dashboard-agenda>a>div:nth-child(2){display:grid;gap:2px}.dashboard-agenda span,.dashboard-agenda small{color:#666}.dashboard-agenda em{font-style:normal;font-size:11px;font-weight:800;background:#f1f1f1;border-radius:99px;padding:6px 9px;white-space:nowrap}.dashboard-alerts{display:grid;gap:9px}.dashboard-alerts>a{display:flex;align-items:flex-start;gap:9px;text-decoration:none;border-radius:10px;padding:12px;font-size:13px;font-weight:700}.dashboard-alerts>a.danger{background:#fff0f1;color:#9f0a18;border:1px solid #f1bbc0}.dashboard-alerts>a.warn{background:#fff8e8;color:#795400;border:1px solid #eddcae}.dashboard-ok{padding:18px;background:#eef8f1;color:#24633a;border-radius:10px;font-weight:700}.dashboard-finance,.dashboard-inventory{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.dashboard-finance>div,.dashboard-inventory>div{padding:15px;border:1px solid #e8e8e8;border-radius:12px;display:grid;gap:5px}.dashboard-finance span,.dashboard-inventory span{font-size:12px;color:#666}.dashboard-finance strong,.dashboard-inventory strong{font-size:20px}.danger-number strong{color:#b40012}.dashboard-conflicts{display:grid;gap:8px}.dashboard-conflicts>div{display:flex;gap:10px;align-items:center;padding:11px;border:1px solid #f0c1c5;background:#fff5f6;border-radius:10px}.dashboard-conflicts>div>div{display:grid;gap:2px}.dashboard-conflicts span{font-size:12px;color:#666}@media(max-width:1100px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.dashboard-grid.lower{grid-template-columns:1fr}}@media(max-width:650px){.dashboard-kpis,.dashboard-finance,.dashboard-inventory{grid-template-columns:1fr}.dashboard-agenda>a{grid-template-columns:1fr}.dashboard-agenda em{justify-self:start}.dashboard-section-head{flex-direction:column}}.sidebar-user{margin-top:auto;padding:16px 14px 8px;border-top:1px solid #252525;display:grid;gap:3px}.sidebar-user strong{font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user span{font-size:11px;color:#aaa;text-transform:uppercase;letter-spacing:.06em}.sidebar-user+.logout{margin-top:6px}.alert.success{background:#edf8f0;color:#24643a;border:1px solid #cfe7d6}.roles-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.roles-summary>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:5px}.roles-summary strong{font-size:14px}.roles-summary span{font-size:12px;color:#666;line-height:1.4}.users-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.8fr);gap:18px;align-items:start}.users-list{display:grid;gap:10px;margin-top:14px}.user-access-card{border:1px solid #e5e5e5;border-radius:13px;padding:14px;display:grid;gap:14px}.user-access-card.inactive{opacity:.6;background:#fafafa}.user-access-head{display:flex;align-items:center;gap:12px}.user-access-head>div:last-child{display:grid;gap:2px}.user-access-head span{font-size:12px;color:#666}.user-access-head em{font-style:normal;font-size:10px;background:#111;color:#fff;border-radius:99px;padding:3px 7px;margin-left:6px}.user-access-controls{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(145px,.8fr) auto auto;gap:10px;align-items:end}.user-access-controls label{display:grid;gap:5px;font-size:12px;font-weight:700}.user-access-controls input,.user-access-controls select{min-height:40px;border:1px solid #d5d5d5;border-radius:8px;padding:8px 10px;background:#fff}.user-access-controls .active-check{display:flex;align-items:center;gap:7px;min-height:40px;white-space:nowrap}.user-access-controls .active-check input{width:16px;min-height:auto}.permission-line{color:#777}.access-note{margin-bottom:16px;padding:12px 14px;border-radius:10px;background:#fff8e8;border:1px solid #eddcae;color:#715100;font-size:13px;font-weight:650}.commercial-readonly input,.commercial-readonly select,.commercial-readonly textarea{pointer-events:none;background:#f7f7f7!important;color:#555}.commercial-readonly .recurring-generator,.commercial-readonly .manual-session-form,.commercial-readonly .production-form,.commercial-readonly .reservation-form,.commercial-readonly .actions.end,.commercial-readonly .icon-btn.danger-text,.commercial-readonly .status-control button{display:none!important}.commercial-readonly .status-control select{pointer-events:none}.commercial-readonly .internal-notes{pointer-events:none;background:#f7f7f7}.commercial-readonly .session-card{pointer-events:auto}@media(max-width:1050px){.users-layout{grid-template-columns:1fr}.user-access-controls{grid-template-columns:1fr 1fr}.roles-summary{grid-template-columns:1fr}}@media(max-width:650px){.user-access-controls,.roles-summary{grid-template-columns:1fr}}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-grid .panel h2{display:flex;gap:9px;align-items:center}.settings-grid .panel:last-child{grid-column:1/-1}.notice.success{background:#edf8f0;color:#1d6b36;border:1px solid #cfe8d6}.settings-grid textarea{width:100%;margin-top:7px}.settings-grid label{display:block;font-weight:600}.settings-grid label+label{margin-top:14px}@media(max-width:950px){.settings-grid{grid-template-columns:1fr}.settings-grid .panel:last-child{grid-column:auto}}.catalog-page{max-width:1560px}.margin-panel{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:18px}.margin-panel h2{display:flex;align-items:center;gap:8px;margin-bottom:5px}.margin-inputs{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:10px;align-items:end}.margin-inputs label{display:grid;gap:5px;font-size:12px;font-weight:700}.margin-inputs input{min-height:42px;border:1px solid #d8d8d8;border-radius:9px;padding:8px 10px}.catalog-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.7fr);gap:18px;align-items:start}.catalog-list{position:sticky;top:88px;max-height:calc(100vh - 110px);display:flex;flex-direction:column}.catalog-list-head,.catalog-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.catalog-list-head h2,.catalog-editor-head h2{display:flex;align-items:center;gap:8px}.btn.small{min-height:36px;padding:7px 10px;font-size:12px}.catalog-filters{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.catalog-filters .search-box{margin:0}.catalog-filters select{border:1px solid #ddd;border-radius:9px;padding:0 10px;background:#fff}.catalog-items{overflow:auto;display:grid;gap:7px;padding-right:3px}.catalog-product{border:1px solid #e5e5e5;background:#fff;border-radius:10px;padding:11px 12px;text-align:left;display:flex;justify-content:space-between;gap:12px;cursor:pointer;font:inherit}.catalog-product:hover,.catalog-product.active{border-color:#e20817}.catalog-product.active{box-shadow:inset 3px 0 #e20817}.catalog-product.inactive{opacity:.52;background:#fafafa}.catalog-product span{display:grid;gap:3px;min-width:0}.catalog-product strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-product small{color:#777}.catalog-product b{white-space:nowrap}.catalog-editor{display:grid;gap:18px}.product-form{margin-top:18px}.product-form label small{display:block;color:#777;font-weight:500;margin-top:3px}.product-form textarea{width:100%}.recipe-add{min-height:42px;border:1px solid #d7d7d7;border-radius:9px;background:#fff;padding:0 10px;max-width:380px}.recipe-list{display:grid;gap:8px;margin-top:14px}.recipe-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 100px 40px;gap:10px;align-items:center;padding:11px 12px;border:1px solid #e8e8e8;border-radius:10px}.recipe-row>div{display:grid;gap:2px}.recipe-row small{color:#777}.recipe-row label{display:grid;gap:4px;font-size:11px;font-weight:700}.recipe-row input{min-height:38px;border:1px solid #ddd;border-radius:8px;padding:7px 9px}.recipe-row>strong{text-align:right}.empty-inline{padding:14px;border:1px dashed #ddd;border-radius:9px;color:#777}.cost-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.cost-summary>div,.price-guides>div{border:1px solid #e5e5e5;border-radius:11px;padding:13px;display:grid;gap:5px}.cost-summary span,.price-guides span{font-size:12px;color:#666}.cost-summary strong,.price-guides strong{font-size:19px}.margin-bad{background:#fff1f2;border-color:#f1bcc2!important}.margin-bad strong{color:#b40012}.margin-good{background:#eef8f1;border-color:#cfe8d6!important}.margin-good strong{color:#21653a}.price-guides{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.costs-layout{display:grid;gap:18px}.cost-create-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.cost-create-grid label{display:grid;gap:5px;font-size:12px;font-weight:700}.cost-create-grid .wide{grid-column:span 3}.internal-costs-list{display:grid;gap:7px}.internal-cost-row{display:grid;grid-template-columns:145px minmax(180px,1.25fr) 110px 110px minmax(180px,1.2fr) 100px;gap:8px;align-items:center;padding:9px;border:1px solid #e7e7e7;border-radius:10px}.internal-cost-row.inactive{opacity:.55;background:#fafafa}.internal-cost-row input,.internal-cost-row select{min-height:38px;border:1px solid #ddd;border-radius:8px;padding:7px 9px;background:#fff}.catalog-page .notice{margin-bottom:16px}@media(max-width:1200px){.margin-panel{display:grid}.margin-inputs{grid-template-columns:repeat(2,1fr)}.catalog-layout{grid-template-columns:1fr}.catalog-list{position:static;max-height:none}.cost-summary,.price-guides{grid-template-columns:repeat(2,1fr)}.internal-cost-row{grid-template-columns:1fr 1fr 100px 100px}.internal-cost-row input:nth-of-type(3){grid-column:span 2}.cost-create-grid{grid-template-columns:repeat(2,1fr)}.cost-create-grid .wide{grid-column:span 2}}@media(max-width:700px){.margin-inputs,.cost-summary,.price-guides,.cost-create-grid,.catalog-filters{grid-template-columns:1fr}.recipe-row{grid-template-columns:1fr 100px}.recipe-row>strong{text-align:left}.internal-cost-row{grid-template-columns:1fr}.internal-cost-row input:nth-of-type(3),.cost-create-grid .wide{grid-column:auto}}.reports-page{max-width:1560px}.report-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.report-filter label{display:grid;gap:5px;font-size:12px;font-weight:700}.report-filter input{min-height:40px;border:1px solid #d7d7d7;border-radius:8px;padding:7px 10px}.report-presets{display:flex;gap:8px;margin-right:auto}.report-presets .btn.active{background:#111;color:#fff;border-color:#111}.report-presets .btn.active:hover{background:#111;color:#fff}.report-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.report-kpis>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:5px}.report-kpis span{display:flex;align-items:center;gap:7px;color:#666;font-size:12px;font-weight:750}.report-kpis strong{font-size:24px}.report-kpis small{color:#777}.report-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.section-note{font-size:12px!important;margin-top:-10px!important;margin-bottom:16px!important}.monthly-chart{height:210px;display:flex;align-items:flex-end;gap:12px;overflow-x:auto;border-bottom:1px solid #ddd;padding:8px 4px 0}.month-col{min-width:62px;display:grid;justify-items:center;gap:5px}.bar-pair{height:155px;display:flex;align-items:flex-end;gap:4px}.bar{display:block;width:16px;border-radius:5px 5px 0 0;min-height:2px}.bar.quoted,.legend-box.quoted{background:#111}.bar.received,.legend-box.received{background:#e20817}.month-col strong{font-size:11px;text-transform:capitalize}.month-col small{font-size:10px;color:#777}.chart-legend{display:flex;gap:18px;margin-top:12px;font-size:12px;color:#666}.chart-legend span{display:flex;align-items:center;gap:6px}.legend-box{width:12px;height:12px;border-radius:3px}.rank-list{display:grid}.rank-list>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #eee}.rank-list>div:last-child{border-bottom:0}.rank-list>b{width:25px;height:25px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-size:11px}.rank-list span,.rank-list em{display:grid;gap:2px}.rank-list em{text-align:right;font-style:normal}.rank-list small{font-size:11px;color:#777}.report-summary-list{display:grid;gap:3px}.report-summary-list>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #eee}.report-summary-list span{color:#555}.report-summary-list strong{text-align:right}@media(max-width:1150px){.report-kpis{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr}}@media(max-width:650px){.report-kpis{grid-template-columns:1fr}.report-presets{width:100%;overflow:auto}.report-filter{align-items:stretch}.rank-list>div{grid-template-columns:26px 1fr}.rank-list em{grid-column:2;text-align:left}.monthly-chart{height:190px}}.reports-page .rank-list>.empty-inline{width:100%;min-height:120px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;overflow-wrap:normal;word-break:normal;line-height:1.45;padding:24px;box-sizing:border-box}.production-orders-page{max-width:1560px}.production-orders-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.65fr);gap:18px;align-items:start}.production-orders-list{position:sticky;top:88px;max-height:calc(100vh - 110px);display:flex;flex-direction:column}.production-list-head h2{display:flex;align-items:center;gap:8px;margin-bottom:3px}.production-list-head small{color:#777}.production-list-filters{display:grid;grid-template-columns:1fr 155px;gap:8px;margin:14px 0 12px}.production-list-filters .search-box{margin:0}.production-list-filters select{border:1px solid #ddd;border-radius:9px;padding:0 9px;background:#fff}.production-order-cards{overflow:auto;display:grid;gap:8px;padding-right:3px}.production-order-card{position:relative;border:1px solid #e3e3e3;border-radius:11px;background:#fff;padding:12px;text-align:left;cursor:pointer;display:grid;gap:7px;font:inherit}.production-order-card:hover,.production-order-card.active{border-color:#e20817}.production-order-card.active{box-shadow:inset 3px 0 #e20817}.production-order-card>span{display:grid;gap:2px;padding-right:132px}.production-order-card b{font-size:13px}.production-order-card small{color:#6f6f6f;font-style:normal}.production-order-card em{position:absolute;right:12px;top:12px;max-width:120px;text-align:right;line-height:1.2;font-size:10px;font-style:normal;color:#555}.production-order-card i{width:max-content;font-style:normal;font-size:10px;font-weight:750;border-radius:999px;padding:4px 7px;background:#f1f1f1;color:#555}.production-order-card i.done{background:#eaf6ee;color:#22623a}.production-order-card i.cancelled{background:#f5eded;color:#8a3232}.production-order-sheet{display:grid;gap:14px}.production-order-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.production-order-header>div:first-child>span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#e20817}.production-order-header h2{margin:4px 0}.production-order-header p{margin:0;color:#666}.production-order-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.order-block h3{display:flex;align-items:center;gap:8px;margin-bottom:14px}.order-block textarea{width:100%;resize:vertical}.order-form-grid{display:grid;gap:10px}.order-form-grid.four{grid-template-columns:1.2fr .8fr .8fr 1.35fr}.order-form-grid.two{grid-template-columns:1.4fr 1fr}.order-form-grid label{display:grid;gap:5px;font-size:12px;font-weight:700}.order-form-grid input,.order-form-grid select{min-height:42px;border:1px solid #d7d7d7;border-radius:9px;padding:8px 10px;background:#fff}.order-resources-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.order-simple-list{display:grid}.order-simple-list>div:not(.empty-inline){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 0;border-bottom:1px solid #eee}.order-simple-list>div:last-child{border-bottom:0}.order-simple-list span{font-size:12px;color:#666;text-align:right}.order-footer-link{margin-top:12px;padding-top:12px;border-top:1px solid #eee;color:#666;font-size:12px}.order-footer-link a{color:#111;font-weight:750}.empty-order{min-height:300px;display:grid;place-items:center;align-content:center;text-align:center;color:#777}.empty-order h2{color:#222;margin:8px 0 3px}@media(max-width:1100px){.production-orders-layout{grid-template-columns:1fr}.production-orders-list{position:static;max-height:none}.production-order-cards{max-height:360px}.order-form-grid.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.production-list-filters,.order-form-grid.four,.order-form-grid.two,.order-resources-grid{grid-template-columns:1fr}.production-order-header{display:grid}.production-order-actions{justify-content:flex-start}.production-order-card>span{padding-right:0}.production-order-card em{position:static}.order-simple-list>div:not(.empty-inline){grid-template-columns:1fr}.order-simple-list span{text-align:left}}.post-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px}.post-toolbar .search-box{flex:1}.post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px}.post-card{padding:18px}.post-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.post-card-head small{color:#777}.post-card-head h3{margin:5px 0 0}.deadline-pill{font-size:12px;font-weight:700;border:1px solid #ddd;border-radius:999px;padding:5px 9px;white-space:nowrap}.deadline-pill.late{background:#111;color:#fff}.deadline-pill.today{border-color:#111}.deadline-pill.ok{background:#f4f4f4}.deadline-pill.done{background:#eee}.post-dates{display:flex;flex-wrap:wrap;gap:8px 18px;padding:14px 0;border-bottom:1px solid #eee;margin-bottom:14px}.post-dates span{display:flex;gap:6px;align-items:center;font-size:13px;color:#666}.post-dates b{color:#111}.post-assignment,.post-progress{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.post-assignment label,.post-progress label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#666}.post-assignment strong,.post-progress strong{font-size:14px;color:#111;padding:9px 0}.post-progress .wide{grid-column:1/-1}@media(max-width:700px){.post-grid,.post-assignment,.post-progress{grid-template-columns:1fr}.post-toolbar{align-items:stretch;flex-direction:column}}.postproduction-selector{border:1px solid #e3e3e3;border-radius:10px;padding:14px;display:grid;gap:5px}.postproduction-selector>small{color:#777;font-weight:400}.postproduction-selector>div{display:grid;gap:7px;margin-top:6px}.postproduction-selector label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px!important;font-weight:500!important}.postproduction-selector input{min-height:auto!important;margin-top:2px}.postproduction-selector em{font-size:12px;color:#777;font-style:normal}.post-grid{grid-template-columns:repeat(auto-fit,minmax(390px,1fr))}.post-assignment select,.post-progress select{width:100%;min-width:0}.post-assignment{grid-template-columns:minmax(0,1.25fr) minmax(145px,.75fr)}.post-save-row{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #eee}.post-save-hint{font-size:12px;color:#777;margin-right:auto}.post-save-hint.ok{color:#111;font-weight:700}.post-save-row .btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:700px){.post-save-row{align-items:stretch;flex-direction:column}.post-save-row .btn{width:100%;justify-content:center}.post-save-hint{margin-right:0}}.deadline-pill.neutral{background:#fff;color:#666;border-style:dashed}.deadline-pill.done{background:#edf6ef;color:#245b35;border-color:#cfe4d4}.deadline-pill.late{background:#111;color:#fff;border-color:#111}.operational-agenda-page{max-width:1560px}.agenda-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.agenda-range{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.agenda-range span{color:#777;font-size:13px}.agenda-toolbar select{min-height:42px;border:1px solid #d7d7d7;border-radius:9px;background:#fff;padding:7px 10px}.agenda-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.agenda-kpis>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 17px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.agenda-kpis span{color:#666;font-size:13px;font-weight:700}.agenda-kpis strong{font-size:24px}.agenda-kpis .alerted{border-color:#111}.agenda-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.agenda-section{padding:18px;margin-bottom:0}.agenda-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #eee}.agenda-section-head>div{display:flex;align-items:center;gap:8px}.agenda-section-head h2{margin:0}.agenda-section-head small{color:#777}.agenda-list{display:grid}.agenda-item{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #eee}.agenda-item:last-child{border-bottom:0}.agenda-item-main{min-width:0}.agenda-date{display:block;font-size:11px;font-weight:800;color:#555;margin-bottom:4px}.agenda-item h3{font-size:14px;margin:0 0 3px;line-height:1.25}.agenda-item p{font-size:12px;color:#666}.agenda-meta{display:flex;gap:8px 12px;flex-wrap:wrap;margin-top:9px}.agenda-meta span{display:flex;align-items:center;gap:4px;color:#666;font-size:11px}.agenda-link{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;color:#111;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}.agenda-link:hover{text-decoration:underline}.agenda-empty{min-height:110px;display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;color:#777;font-size:13px}.agenda-item.late .agenda-date{color:#111}.late-section{border-top:3px solid #111}@media(max-width:1200px){.agenda-columns{grid-template-columns:1fr 1fr}.late-section{grid-column:1/-1}}@media(max-width:760px){.agenda-columns,.agenda-kpis{grid-template-columns:1fr}.late-section{grid-column:auto}.agenda-toolbar{align-items:stretch;flex-direction:column}.agenda-toolbar select{width:100%}}.profit-layout{display:grid;grid-template-columns:minmax(270px,330px) minmax(0,1fr);gap:18px;align-items:start}.profit-projects{padding:0;overflow:hidden;position:sticky;top:86px;max-height:calc(100vh - 110px)}.profit-projects-head{padding:18px;border-bottom:1px solid #e8e8e8}.profit-projects-head h2{display:flex;align-items:center;gap:8px;margin:0 0 12px}.profit-projects-head input{width:100%}.profit-project-list{overflow:auto;max-height:calc(100vh - 210px)}.profit-project-row{display:flex;width:100%;flex-direction:column;align-items:flex-start;text-align:left;padding:14px 18px;border:0;border-bottom:1px solid #eee;background:#fff;cursor:pointer;gap:3px}.profit-project-row:hover{background:#fafafa}.profit-project-row.active{background:#f6f6f6;border-left:4px solid #e20817;padding-left:14px}.profit-project-row strong{font-size:15px}.profit-project-row span{font-size:14px}.profit-project-row small{color:#717171;font-size:12px}.profit-main{display:flex;flex-direction:column;gap:16px;min-width:0}.profit-project-title{display:flex;justify-content:space-between;align-items:flex-start}.profit-project-title span:first-child{color:#e20817;font-weight:800;font-size:11px;letter-spacing:.08em}.profit-project-title h2{margin:3px 0}.profit-project-title p{margin:0;color:#666}.profit-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.profit-kpis>div{background:#fff;border:1px solid #ddd;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:7px;min-width:0}.profit-kpis span{display:flex;align-items:center;gap:7px;color:#555;font-size:13px}.profit-kpis strong{font-size:22px}.profit-kpis small{color:#777}.profit-kpis .good{border-top:3px solid #111}.profit-kpis .bad{border-top:3px solid #e20817}.profit-kpis .neutral{border-top:3px solid #bdbdbd}.actual-cost-form{display:grid;grid-template-columns:150px minmax(220px,1fr) 130px 160px;gap:12px;align-items:end;margin-top:18px}.actual-cost-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.actual-cost-form input,.actual-cost-form select{width:100%}.actual-cost-notes{grid-column:1/4}.actual-cost-form .btn{height:44px}.actual-cost-list{margin-top:20px;border-top:1px solid #eee}.actual-cost-row{display:grid;grid-template-columns:minmax(0,1fr) auto 38px;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #eee}.actual-cost-row span{display:flex;flex-direction:column;gap:3px}.actual-cost-row small{color:#777}.profit-total-line{display:flex;justify-content:space-between;align-items:center;padding-top:16px;font-size:16px}.profit-total-line strong{font-size:20px}@media(max-width:1100px){.profit-kpis{grid-template-columns:repeat(2,1fr)}.actual-cost-form{grid-template-columns:repeat(2,minmax(0,1fr))}.actual-cost-notes{grid-column:auto}.actual-cost-form .btn{width:100%}}@media(max-width:800px){.profit-layout{grid-template-columns:1fr}.profit-projects{position:static;max-height:none}.profit-project-list{max-height:280px}.profit-kpis,.actual-cost-form{grid-template-columns:1fr}.actual-cost-notes{grid-column:auto}}.auto-cost-box{border:1px solid #e5e5e5;border-radius:14px;padding:14px;margin:12px 0 18px;background:#fafafa}.auto-cost-title,.additional-cost-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}.auto-cost-title span,.additional-cost-title small{color:#707070;font-size:12px}.actual-cost-row.auto{grid-template-columns:minmax(0,1fr) auto}.profit-total-line.grand{margin-top:12px;padding-top:12px;border-top:2px solid #111;font-size:15px}.additional-cost-title{margin-top:8px}
