:root{font-family:system-ui,sans-serif;line-height:1.5;color:#1a1a1a;background:#f4f2ef}body{margin:0;min-height:100vh;overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;box-sizing:border-box}.auth-card{width:100%;max-width:22rem;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 8px 30px #00000014}.auth-card-wide{max-width:26rem}.auth-title{margin:0 0 .35rem;font-size:1.5rem;font-weight:650}.auth-lead{margin:0 0 1.5rem;font-size:.9rem;color:#555}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500}.auth-input{padding:.55rem .65rem;border:1px solid #ccc;border-radius:8px;font-size:1rem}.auth-input:focus{outline:2px solid #8b7355;outline-offset:1px;border-color:#8b7355}.auth-input.auth-input-invalid{border-color:#a32020}.auth-field-error{margin:0;font-size:.8rem;color:#a32020}.auth-error{margin:0;font-size:.85rem;color:#a32020}.auth-submit{margin-top:.25rem;padding:.65rem 1rem;border:none;border-radius:8px;background:#2c2416;color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-footer{margin:1.25rem 0 0;font-size:.85rem;color:#555;text-align:center}.auth-link{color:#5c4d3a;font-weight:600}.scheduling-page{padding:1.25rem;padding-left:max(1.25rem,env(safe-area-inset-left,0px));padding-right:max(1.25rem,env(safe-area-inset-right,0px));padding-bottom:max(1.25rem,env(safe-area-inset-bottom,0px));max-width:72rem;margin:0 auto;box-sizing:border-box}.scheduling-head{margin-bottom:1rem}.scheduling-title{margin:0;font-size:1.65rem;font-weight:650;color:#1a1a1a}.scheduling-sub{margin:.35rem 0 0;font-size:.9rem;color:#555}.scheduling-banner{margin:0 0 .75rem;padding:.65rem .85rem;border-radius:8px;font-size:.88rem}.scheduling-banner-error{background:#fde8e8;color:#7a1f1f;border:1px solid #e8b4b4}.scheduling-banner-warn{background:#fff8e6;color:#5c4810;border:1px solid #e8d48b}.studio-subscription-notice{margin-bottom:.75rem}.studio-subscription-regularize{margin:0 0 1rem;padding:.75rem 0 0;border-top:1px solid #e8e4dc}.scheduling-hint{margin:0 0 1rem;font-size:.85rem;color:#666;max-width:40rem}.scheduling-toolbar{margin-bottom:1.25rem}.scheduling-toolbar-split{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem;justify-content:space-between}.scheduling-view-toggle{display:inline-flex;gap:.35rem;flex-wrap:wrap}.scheduling-toolbar-dates{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.scheduling-toolbar-assignee-filter{flex:1 1 12rem;min-width:10rem;max-width:22rem}.scheduling-week-nav{display:flex;flex-wrap:wrap;gap:.45rem}.scheduling-week-range-caption,.scheduling-week-empty-banner{margin:0 0 .75rem}.scheduling-week-wrap{overflow-x:auto;margin-bottom:.25rem}.scheduling-week-head{display:flex;min-width:min(52rem,100%)}.scheduling-week-gutter{width:3.25rem;flex-shrink:0}.scheduling-week-head-cell{flex:1;min-width:4rem;text-align:center;font-size:.78rem;font-weight:600;color:#444;padding:.35rem .2rem;border-bottom:1px solid #e5e2dc}.scheduling-week-body{display:flex;min-width:min(52rem,100%)}.scheduling-week-times{width:3.25rem;flex-shrink:0;border-right:1px solid #e5e2dc;box-sizing:border-box}.scheduling-week-time-slot{box-sizing:border-box;border-bottom:1px solid #f0ece6;position:relative}.scheduling-week-time-text{position:absolute;right:.2rem;top:.05rem;font-size:.68rem;color:#888;line-height:1}.scheduling-week-day-col{flex:1;min-width:4rem;position:relative;border-left:1px solid #eee;background-size:100% 26px;background-image:linear-gradient(to bottom,#f6f4f0 0,#f6f4f0 calc(100% - 1px),#ebe6df)}.scheduling-week-day-col.scheduling-week-day-col-drop-hover{outline:2px dashed #8b7355;outline-offset:-2px;background-color:#e8dfd266}.scheduling-week-event{position:absolute;box-sizing:border-box;margin:0;padding:.15rem .25rem;border:none;border-radius:4px;background:linear-gradient(135deg,#e8dfd2,#ddd2c2);color:#2a241c;text-align:left;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;gap:.05rem;font-family:inherit;box-shadow:0 1px 2px #0000000f}.scheduling-week-event:hover{filter:brightness(1.04)}.scheduling-week-event-muted{opacity:.55}.scheduling-week-event-draggable{cursor:grab}.scheduling-week-event-draggable:active{cursor:grabbing}.scheduling-week-event-time{font-size:.65rem;font-weight:700;opacity:.85}.scheduling-week-event-assignee{font-size:.62rem;font-weight:500;opacity:.78;line-height:1.15}.scheduling-week-event-title{font-size:.72rem;font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.scheduling-drawer-inner{padding:1.25rem 1.35rem 1.5rem}.scheduling-drawer-title{margin:0 0 .75rem;font-size:1.2rem;font-weight:650}.scheduling-drawer-line{margin:0 0 .45rem}.scheduling-drawer-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem}.scheduling-drawer-btn{width:100%;justify-content:center}.scheduling-date-label{display:inline-flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500}.scheduling-input{padding:.5rem .6rem;border:1px solid #ccc;border-radius:8px;font-size:.95rem;min-width:0;box-sizing:border-box}.scheduling-input:focus{outline:2px solid #8b7355;outline-offset:1px;border-color:#8b7355}.scheduling-date-input{max-width:11rem}.scheduling-grid{display:grid;gap:1.25rem}@media(min-width:960px){.scheduling-grid{grid-template-columns:repeat(2,1fr)}.scheduling-grid .scheduling-card:last-child{grid-column:1 / -1}}.scheduling-card{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e2dc;box-shadow:0 4px 18px #0000000a;min-width:0}.scheduling-card-narrow{max-width:min(36rem,100%)}.scheduling-input-fluid{width:100%;max-width:min(22rem,100%);box-sizing:border-box}.scheduling-card-title{margin:0 0 .75rem;font-size:1.1rem;font-weight:650}.scheduling-card-subtitle{margin:.85rem 0 .45rem;font-size:.88rem;font-weight:600;color:#555}.scheduling-card-subtitle:first-of-type{margin-top:0}.scheduling-subtitle{margin:1.25rem 0 .65rem;font-size:.95rem;font-weight:600;color:#333}.scheduling-empty{margin:0;font-size:.9rem;color:#777}.scheduling-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.scheduling-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.65rem 0;border-bottom:1px solid #eee}.scheduling-row:last-child{border-bottom:none}.scheduling-row-muted{opacity:.55}.scheduling-row-actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;flex-shrink:0}.scheduling-reminder-channel{margin-top:.75rem}.scheduling-reminder-hint{margin-top:.35rem;font-size:.85rem}.scheduling-code{font-size:.88em;background:#f0ebe4;padding:.05rem .3rem;border-radius:3px}.scheduling-checkbox-label{display:flex;align-items:flex-start;gap:.45rem;font-size:.88rem;line-height:1.35}.scheduling-checkbox-label input{margin-top:.2rem;flex-shrink:0}.scheduling-meta{margin-top:.2rem;font-size:.82rem;color:#666}.scheduling-pill{display:inline-block;margin-left:.45rem;padding:.15rem .45rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;background:#ede9e3;color:#4a4238}.scheduling-pill-warn{background:#fff0e0;color:#8a4a00;border:1px solid #e8c48a}.scheduling-pill-error{background:#fdecea;color:#8a1c1c;border:1px solid #e8a8a3}.scheduling-row-alert{border-left:3px solid #c77d1a;padding-left:.5rem}.scheduling-row-stack{flex-direction:column;align-items:stretch!important}.scheduling-list-inventory .scheduling-row:not(.scheduling-row-stack){align-items:flex-start}.inventory-row-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.inventory-edit-grid{display:grid;gap:.75rem;grid-template-columns:1fr;width:100%}@media(min-width:640px){.inventory-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.inventory-edit-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.cashflow-filter-grid{display:grid;gap:.75rem;grid-template-columns:1fr;max-width:none}@media(min-width:720px){.cashflow-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.cashflow-filter-actions{display:flex;align-items:flex-end}.cashflow-fieldset{border:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:1rem}.cashflow-radio{display:flex;align-items:center;gap:.35rem;font-size:.9rem}.anamnesis-form-wide{max-width:min(36rem,100%)}.anamnesis-textarea{min-height:3rem;resize:vertical}.anamnesis-history{max-width:min(40rem,100%)}.anamnesis-history-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.35rem}.anamnesis-dl{margin:0;display:flex;flex-direction:column;gap:.5rem}.anamnesis-dl dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.85}.anamnesis-dl dd{margin:0;font-size:.95rem}.scheduling-form{display:flex;flex-direction:column;gap:.75rem;max-width:22rem}.scheduling-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500}.scheduling-btn{padding:.5rem .85rem;font-size:.88rem;border-radius:8px;cursor:pointer;font-weight:600;border:1px solid transparent;align-self:flex-start;min-height:2.75rem;touch-action:manipulation}.scheduling-btn:disabled{opacity:.55;cursor:not-allowed}.scheduling-btn-primary{background:#2c2416;color:#fff;border-color:#2c2416}.scheduling-btn-primary:hover:not(:disabled){background:#3d3424}.scheduling-btn-ghost{background:#fff;border-color:#ccc;color:#333}.scheduling-btn-ghost:hover:not(:disabled){background:#fafafa}.scheduling-slot-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1rem;max-width:26rem}.scheduling-slot-btn{padding:.45rem .65rem;font-size:.85rem;border:1px solid #ccc;border-radius:8px;background:#fff;cursor:pointer;font-weight:500;min-height:2.75rem;min-width:3.25rem;touch-action:manipulation}.scheduling-slot-btn:hover{border-color:#8b7355}.scheduling-slot-btn-selected{background:#2c2416;color:#fff;border-color:#2c2416}.scheduling-public-link-block{margin-bottom:1rem}.scheduling-public-link-title{margin-bottom:.5rem}.scheduling-public-link-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:stretch;max-width:44rem}.scheduling-public-url-input{flex:1;min-width:12rem;font-size:.82rem;font-family:ui-monospace,monospace}.scheduling-copy-url-btn{flex-shrink:0;align-self:stretch}.scheduling-public-link-meta{margin-top:.45rem}.scheduling-toolbar-public{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.85rem 1.25rem;margin-bottom:.25rem}.scheduling-day-caption{margin:0;font-size:.9rem;color:#444;font-weight:500}.scheduling-slots-region{min-height:2.75rem}.scheduling-slots-updating-hint{margin:0 0 .5rem;font-size:.82rem;color:#666;font-style:italic}.scheduling-slots-inner-dim{opacity:.55;transition:opacity .2s ease}.scheduling-slots-inner{transition:opacity .2s ease}.scheduling-slot-skeleton{width:3.35rem;height:2rem;border-radius:8px;background:linear-gradient(90deg,#ece9e4,#f7f5f2,#ece9e4);background-size:200% 100%;animation:scheduling-shimmer 1.1s ease-in-out infinite}.scheduling-slot-grid-skeleton{margin-bottom:.25rem}@keyframes scheduling-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.scheduling-fieldset{border:none;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:.75rem}@media(max-width:600px){.auth-page{align-items:flex-start;padding:max(1rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}.auth-card{padding:1.35rem}.auth-input{font-size:1rem;min-height:2.75rem;box-sizing:border-box}.scheduling-page{padding:.85rem;padding-left:max(.85rem,env(safe-area-inset-left,0px));padding-right:max(.85rem,env(safe-area-inset-right,0px));padding-bottom:max(.85rem,env(safe-area-inset-bottom,0px))}.studio-shell .scheduling-page{padding-bottom:.85rem}.scheduling-title{font-size:clamp(1.35rem,5vw,1.65rem);word-break:break-word}.scheduling-sub{word-break:break-word}.scheduling-card{padding:1rem}.scheduling-form{max-width:none}.scheduling-input,.scheduling-input-fluid{width:100%;max-width:none;font-size:1rem;min-height:2.75rem}.scheduling-date-input{max-width:none;width:100%}.scheduling-toolbar,.scheduling-toolbar-public{flex-direction:column;align-items:stretch}.scheduling-toolbar-public .scheduling-day-caption{margin-top:.15rem}.scheduling-public-link-row{flex-direction:column;align-items:stretch}.scheduling-public-url-input{min-width:0;width:100%}.scheduling-copy-url-btn{width:100%}.scheduling-slot-grid,.scheduling-slot-grid-skeleton{max-width:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:.35rem;margin-left:-.15rem;margin-right:-.15rem;padding-left:.15rem;padding-right:.15rem;scrollbar-gutter:stable}.scheduling-slot-grid .scheduling-slot-btn,.scheduling-slot-grid-skeleton .scheduling-slot-skeleton{flex-shrink:0;scroll-snap-align:start}.scheduling-row{flex-direction:column;align-items:stretch;gap:.5rem}.scheduling-list-inventory .scheduling-row:not(.scheduling-row-stack){align-items:stretch}.scheduling-row-actions{justify-content:flex-start;width:100%;flex-wrap:wrap}.scheduling-row-actions .scheduling-btn{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:min(100%,8rem);min-height:2.75rem;text-align:center}.inventory-row-actions{justify-content:stretch;width:100%}.inventory-row-actions .scheduling-btn{display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:0;text-align:center}.cashflow-filter-actions,.cashflow-filter-actions .scheduling-btn{width:100%}.cashflow-fieldset{flex-direction:column;align-items:flex-start}}
