.app{background-color:var(--color-bg);display:flex;flex-direction:column;height:100vh}.app-container{display:flex;flex:1 1;overflow:hidden}.main-content{background-color:var(--color-bg);flex:1 1;overflow-y:auto;padding:var(--spacing-lg)}@media (max-width:768px){.app-container{flex-direction:column}.main-content{padding:var(--spacing-md)}}.auth-gate-loading{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-lg);justify-content:center;min-height:100vh;padding:var(--spacing-lg);text-align:center}.auth-gate-logo{height:auto;max-width:260px;width:100%}.auth-gate-error-text{color:var(--color-text-light);max-width:360px}.auth-fullpage{align-items:center;background-color:var(--color-bg);display:flex;justify-content:center;min-height:100vh;padding:var(--spacing-lg)}.auth-card{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:420px;width:100%}.auth-card-logo{align-self:center;height:auto;margin-bottom:var(--spacing-sm);max-width:220px;width:100%}.auth-card h1{font-size:var(--font-size-xl)}.auth-card h1,.auth-card-hint{margin-bottom:0;text-align:center}.auth-card-hint{font-size:var(--font-size-sm)}.auth-card .form-group{margin-bottom:0}.auth-card form{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-password-field{align-items:center;display:flex;position:relative}.auth-password-field input{padding-right:44px}.auth-password-toggle{align-items:center;background:none;border:none;color:var(--color-text-light);cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:2px;width:44px}.auth-password-toggle:hover{color:var(--color-primary)}.auth-submit-btn{min-height:44px;width:100%}.auth-checklist{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0}.auth-checklist li{align-items:center;color:var(--color-text-light);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm)}.auth-checklist li.auth-check-ok{color:var(--color-success)}.auth-strength-hint{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}.auth-overlay{align-items:center;background-color:rgba(0,0,0,.88);bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:var(--spacing-lg);position:fixed;right:0;top:0;z-index:2000}@supports (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.auth-overlay{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background-color:rgba(0,0,0,.6)}}.auth-app{display:contents}.auth-idle-banner{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-warning);border-radius:var(--radius-md);bottom:var(--spacing-lg);box-shadow:var(--shadow-lg);display:flex;gap:var(--spacing-md);left:50%;max-width:calc(100vw - 32px);padding:var(--spacing-md) var(--spacing-lg);position:fixed;transform:translateX(-50%);z-index:500}.auth-idle-banner span{color:var(--color-text);font-size:var(--font-size-sm)}@media (max-width:640px){.auth-idle-banner{align-items:stretch;flex-direction:column;text-align:center}}.header{background-color:var(--color-primary-light);border-bottom:3px solid var(--color-primary);box-shadow:var(--shadow-sm);padding:var(--spacing-md) var(--spacing-lg);position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;gap:var(--spacing-lg);justify-content:space-between;margin:0 auto;max-width:1600px}.header-menu-toggle{align-items:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;display:none;flex-shrink:0;height:44px;justify-content:center;width:44px}.header-menu-toggle:hover{background-color:rgba(0,0,0,.05)}.logo-container{align-items:center;display:flex;gap:var(--spacing-sm);height:64px;position:relative;text-decoration:none}.logo-image{height:100%;max-width:260px;object-fit:contain;object-position:left center;transition:opacity .2s ease}.logo-image:hover{opacity:.85}.logo-fallback{align-items:center;display:flex;gap:var(--spacing-sm)}.logo-fallback h1{color:var(--color-primary);font-size:28px;font-weight:700;letter-spacing:2px;margin:0}.logo-text{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:600}.header-nav{align-items:center;display:flex;flex:1 1;gap:var(--spacing-lg);justify-content:flex-end}.practice-name{color:var(--color-text);font-size:var(--font-size-sm);font-weight:500}.header-logout{flex-shrink:0;min-height:44px;min-width:44px}@media (max-width:900px){.header{padding:var(--spacing-sm) var(--spacing-md)}.logo-container{height:48px}.practice-name{display:none}}@media (max-width:768px){.header-menu-toggle{display:flex}.header{z-index:201}}@media (max-width:480px){.logo-image{max-width:180px}.header-logout-text{display:none}}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--spacing-lg) 0;width:250px}.sidebar-nav{flex:1 1;padding:0 var(--spacing-md)}.nav-section{margin-bottom:var(--spacing-lg)}.nav-section h3{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.5px;margin-bottom:var(--spacing-md);padding:0 var(--spacing-md);text-transform:uppercase}.nav-link{align-items:center;border-radius:var(--radius-md);color:var(--color-text);display:flex;gap:var(--spacing-md);margin-bottom:4px;padding:var(--spacing-md);text-decoration:none;transition:all .2s ease}.nav-link:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.nav-link.active{background-color:var(--color-primary);color:var(--color-on-primary);font-weight:600}.nav-icon{display:flex;font-size:18px;width:24px}.nav-badge,.nav-icon{align-items:center;justify-content:center}.nav-badge{background-color:var(--color-primary);border-radius:999px;color:var(--color-on-primary);display:inline-flex;font-size:var(--font-size-xs);font-weight:700;height:20px;margin-left:auto;min-width:20px;padding:0 6px}.nav-link.active .nav-badge{background-color:var(--color-surface);color:var(--color-primary)}.nav-badge-danger{background-color:var(--color-error)}.nav-link.active .nav-badge-danger{background-color:var(--color-surface);color:var(--color-error)}.sidebar-footer{border-top:1px solid var(--color-border);padding:var(--spacing-lg) var(--spacing-md)}.app-version{color:var(--color-text-light);font-size:var(--font-size-xs);text-align:center}@media (max-width:768px){.sidebar-overlay{background-color:rgba(0,0,0,.4);inset:0;position:fixed;z-index:199}.sidebar{border-right:1px solid var(--color-border);box-shadow:var(--shadow-lg);height:100vh;left:0;max-width:85vw;position:fixed;top:0;transform:translateX(-100%);transition:transform .25s ease;width:280px;z-index:200}.sidebar.sidebar-open{transform:translateX(0)}.sidebar-nav{padding:0 var(--spacing-md)}.nav-section{margin-bottom:var(--spacing-lg)}.sidebar-footer{display:block}}.home{display:flex;flex-direction:column;gap:var(--spacing-2xl);margin:0 auto;max-width:1100px}.home-hero{background-color:var(--color-primary-light);border-radius:var(--radius-lg);overflow:hidden;padding:var(--spacing-2xl);position:relative}.home-hero-watermark{height:220px;opacity:.5;pointer-events:none;position:absolute;right:-40px;top:50%;transform:translateY(-50%);-webkit-user-select:none;user-select:none;width:auto}.home-hero-content{max-width:520px;position:relative}.home-hero-content h1{color:var(--color-primary);margin:0 0 var(--spacing-sm) 0}.home-hero-content p{color:var(--color-text);font-size:var(--font-size-base);margin:0}.home-warning-card{align-items:center;background-color:var(--color-warning-tint);border:1px solid var(--color-warning-border);border-radius:var(--radius-lg);color:var(--color-warning);display:flex;gap:var(--spacing-lg);padding:var(--spacing-lg)}.home-warning-text{flex:1 1}.home-warning-text h3{color:var(--color-text);margin:0 0 4px}.home-warning-text p{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}.home-warning-card .btn{flex-shrink:0;white-space:nowrap}.home-dashboard-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr)}.home-dashboard-tile{align-items:flex-start;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-primary);display:flex;font-family:inherit;gap:var(--spacing-md);min-height:44px;padding:var(--spacing-lg);text-align:left;text-decoration:none}.home-dashboard-tile.clickable{cursor:pointer;transition:all .2s ease}.home-dashboard-tile.clickable:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.home-dashboard-tile-icon{display:flex;flex-shrink:0}.home-dashboard-tile-body{display:flex;flex-direction:column;min-width:0}.home-dashboard-tile-value{color:var(--color-text);font-size:var(--font-size-2xl);font-weight:700;line-height:1.1}.home-dashboard-tile-label{color:var(--color-text-light);font-size:var(--font-size-sm);margin-top:2px}.home-dashboard-tile-secondary{color:var(--color-text-light);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.home-dashboard-tile.tone-warning{background-color:var(--color-warning-tint);border-color:var(--color-warning-border);color:var(--color-warning)}.home-dashboard-tile.tone-danger{background-color:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error)}.home-dashboard-tile.tone-danger .home-dashboard-tile-value,.home-dashboard-tile.tone-warning .home-dashboard-tile-value{color:inherit}@media (min-width:1024px){.home-dashboard-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:480px){.home-dashboard-grid{grid-template-columns:1fr}}.home-recipe-alerts-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.home-recipe-alert-item{align-items:center;background-color:var(--color-surface);border-left:1px solid var(--color-border);border:1px solid var(--color-border);border-left-width:4px;border-radius:var(--radius-md);color:var(--color-text);display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);text-decoration:none;transition:all .2s ease}.home-recipe-alert-item:hover{box-shadow:var(--shadow-md)}.home-recipe-alert-item.level-warn{border-left-color:var(--color-warning)}.home-recipe-alert-item.level-expired{border-left-color:var(--color-error)}.home-recipe-alert-item.level-ok{border-left-color:var(--color-success)}.home-recipe-alert-main{display:flex;flex-direction:column;gap:2px;min-width:0}.home-recipe-alert-patient{font-weight:600}.home-recipe-alert-message{color:var(--color-text-light);font-size:var(--font-size-sm)}.home-recipe-alert-meta{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.home-recipe-alert-badge{background-color:var(--color-bg);border-radius:999px;color:var(--color-text-light);font-size:var(--font-size-xs);font-weight:600;padding:2px 8px;white-space:nowrap}.level-warn .home-recipe-alert-badge{background-color:var(--color-warning-bg);color:var(--color-warning)}.level-expired .home-recipe-alert-badge{background-color:var(--color-error-bg);color:var(--color-error)}.level-ok .home-recipe-alert-badge{background-color:var(--color-success-bg);color:var(--color-success)}.home-recipe-alert-remaining{color:var(--color-text-light);font-size:var(--font-size-xs);white-space:nowrap}.home-actions{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.home-action-card{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);display:flex;gap:var(--spacing-lg);padding:var(--spacing-lg);text-decoration:none;transition:all .2s ease}.home-action-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.home-action-card svg:first-child{color:var(--color-primary);flex-shrink:0}.home-action-card h3{font-size:var(--font-size-lg);margin:0 0 4px}.home-action-card p{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}.home-action-arrow{color:var(--color-text-light);flex-shrink:0;margin-left:auto}.home-recent-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.home-recent-header h2{margin:0}.home-recent-link{align-items:center;color:var(--color-primary);display:flex;font-size:var(--font-size-sm);font-weight:600;gap:4px;text-decoration:none}.home-recent-link:hover{text-decoration:underline}.home-recent-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.home-recent-item{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);text-decoration:none;transition:all .2s ease}.home-recent-item:hover{background-color:var(--color-primary-light);border-color:var(--color-primary)}.home-recent-name{font-weight:500}.home-recent-badge{align-items:center;background-color:var(--color-primary-light);border-radius:4px;color:var(--color-primary);display:flex;font-size:var(--font-size-xs);font-weight:600;gap:4px;padding:4px 8px}@media (max-width:768px){.home-hero{padding:var(--spacing-lg)}.home-hero-watermark{height:140px;opacity:.35}.home-action-arrow{display:none}.home-warning-card{align-items:flex-start;flex-direction:column}.home-warning-card .btn{width:100%}}.invite-dialog{max-width:480px}.invite-url-row{display:flex;gap:var(--spacing-sm)}.invite-url-row input{flex:1 1;font-family:monospace;font-size:var(--font-size-sm)}.invite-url-row .btn{flex-shrink:0}.page{margin:0 auto;max-width:1200px;width:100%}.page-header{align-items:center;border-bottom:2px solid var(--color-primary-light);display:flex;justify-content:space-between;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg)}.page-header h1{margin:0}.header-actions{display:flex;gap:var(--spacing-md)}.header-actions .btn{white-space:nowrap}.search-bar{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md)}.search-bar input{border:none;flex:1 1;padding:var(--spacing-xs) 0}.search-bar input:focus{box-shadow:none}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-2xl);text-align:center}.loading-container p{color:var(--color-text-light);margin-top:var(--spacing-md)}.empty-state{align-items:center;background-color:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-2xl);text-align:center}.empty-icon{color:var(--color-text-light);margin-bottom:var(--spacing-lg)}.empty-state h2{margin-bottom:var(--spacing-md)}.empty-state p{margin-bottom:var(--spacing-lg);max-width:400px}.patients-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.patient-card{color:inherit;cursor:pointer;text-decoration:none;transition:all .2s ease}.patient-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.patient-header{align-items:flex-start;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.patient-header h3{flex:1 1;margin:0}.patient-type{align-items:center;background-color:var(--color-primary-light);border-radius:4px;color:var(--color-primary);display:inline-flex;font-size:var(--font-size-sm);font-weight:600;gap:4px;padding:4px 8px;white-space:nowrap}.patient-info p{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.patient-info strong{color:var(--color-text)}.modal-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:var(--spacing-lg);position:fixed;right:0;top:0;z-index:999}.modal{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;background-color:var(--color-primary-light);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg)}.modal-header h2{margin:0}.modal-header .btn-close{align-items:center;background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.modal-header .btn-close:hover{color:var(--color-primary)}.modal .form{padding:var(--spacing-lg)}.form-actions{border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.form-actions .btn{flex:1 1}.tabs{border-bottom:2px solid var(--color-border);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);overflow-x:auto}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid transparent;color:var(--color-text-light);cursor:pointer;display:inline-flex;flex:none;font-size:var(--font-size-base);gap:var(--spacing-sm);justify-content:center;margin-bottom:-2px;padding:var(--spacing-md) var(--spacing-lg);text-align:center;transition:all .2s ease;white-space:nowrap}.tab-button:hover{color:var(--color-text)}.tab-button.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.step-number{align-items:center;background-color:var(--color-border);border-radius:50%;color:var(--color-text-light);display:inline-flex;font-size:var(--font-size-xs);font-weight:700;height:20px;justify-content:center;width:20px}.tab-button.active .step-number{background-color:var(--color-primary);color:var(--color-on-primary)}.tab-content{display:none}.tab-content.active{display:block}.confirmed-summary{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.confirmed-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.confirmed-summary-header h4{margin:0}.link-button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:600;padding:0;text-decoration:underline}.link-button:hover{color:var(--color-primary-dark)}.confirmed-list{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.confirmed-row{border-bottom:1px solid var(--color-border);display:flex;font-size:var(--font-size-sm);justify-content:space-between;padding:var(--spacing-xs) 0}.confirmed-row:last-child{border-bottom:none}.confirmed-row-desc{color:var(--color-text)}.confirmed-row-desc strong{color:var(--color-primary);margin-right:var(--spacing-sm)}.confirmed-row-amount{color:var(--color-text);font-weight:600;white-space:nowrap}.confirmed-total{border-top:2px solid var(--color-primary-light);display:flex;font-size:var(--font-size-lg);font-weight:700;justify-content:space-between;padding-top:var(--spacing-md)}.confirmed-total strong{color:var(--color-primary)}.dashboard-pending-banner{align-items:center;cursor:pointer;font-weight:600;text-decoration:none}.dashboard-pending-banner:hover{text-decoration:underline}.card-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-lg)}.card-header-row h2{margin:0}.card-header-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.card-header-actions .btn{min-height:44px}.info-section{border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg)}.info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-section h3{color:var(--color-primary);margin-bottom:var(--spacing-md)}.info-grid{grid-gap:var(--spacing-md) var(--spacing-lg);display:grid;gap:var(--spacing-md) var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.info-row{display:flex;flex-direction:column;gap:2px}.info-row-label{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:600}.info-row-value{color:var(--color-text);white-space:pre-wrap}.chip-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.chip{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-sm);padding:4px 10px}.chip-warning{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.consent-status-granted{color:var(--color-success);font-weight:600}.consent-status-denied{color:var(--color-text-light)}@media (max-width:640px){.modal-fullscreen-mobile{border-radius:0;height:100vh;margin:0;max-height:100vh;max-width:100vw;width:100vw}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-lg)}.header-actions{flex-direction:column;width:100%}.header-actions .btn{width:100%}.patients-grid{grid-template-columns:1fr}.modal{max-width:calc(100vw - 32px)}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.services-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:var(--spacing-md)}.service-checkbox{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);transition:all .2s ease}.service-checkbox:hover{background-color:var(--color-primary-light);border-color:var(--color-primary)}.service-checkbox input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;width:auto}.service-checkbox span{font-weight:500;-webkit-hyphens:auto;hyphens:auto;min-width:0;overflow-wrap:anywhere;-webkit-user-select:none;user-select:none}.physio-suggest-row{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.physio-suggest-label{align-items:center;color:var(--color-text-light);display:flex;font-size:var(--font-size-sm);font-weight:600;gap:6px}.physio-suggest-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.physio-suggest-chip{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-primary);border-radius:999px;color:var(--color-primary);cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:600;gap:4px;justify-content:center;min-height:36px;padding:var(--spacing-xs) var(--spacing-md);text-align:center;transition:all .15s ease}.physio-suggest-chip:hover{background-color:var(--color-primary-light)}.physio-session-sum{color:var(--color-text-light);font-size:var(--font-size-sm);margin-bottom:0;margin-top:var(--spacing-md)}.physio-session-sum strong{color:var(--color-text)}.physio-session-sum.out-of-band,.physio-session-sum.out-of-band strong{color:var(--color-warning)}.contraindication-warnings{margin-top:var(--spacing-md)}textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;font-family:inherit;font-size:var(--font-size-base);padding:var(--spacing-md);width:100%}textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.recipe-upload{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:var(--spacing-lg);position:fixed;right:0;top:0;z-index:1000}.recipe-upload-container{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.recipe-upload-header{align-items:center;background-color:var(--color-primary-light);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg);position:sticky;top:0}.recipe-upload-header h2{font-size:var(--font-size-xl);margin:0}.btn-close{align-items:center;background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.btn-close:hover{color:var(--color-primary)}.ocr-result,.upload-section{padding:var(--spacing-lg)}.upload-area{background-color:rgba(var(--color-primary-rgb),.05);border:2px dashed var(--color-primary);border-radius:var(--radius-lg);cursor:pointer;padding:var(--spacing-2xl);text-align:center;transition:all .2s ease}.upload-area:hover{background-color:var(--color-primary-light);border-color:var(--color-primary-dark)}.upload-icon{color:var(--color-primary);margin-bottom:var(--spacing-md)}.upload-area p{color:var(--color-text);font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.upload-hint{color:var(--color-text-light);display:block;font-size:var(--font-size-sm)}.ocr-loading-state{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-xl) 0 0;text-align:center}.ocr-loading-state p{color:var(--color-text-light);margin:0}.pdf-notice{align-items:flex-start;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.pdf-notice-title{color:var(--color-text);font-weight:600;margin:0 0 4px}.pdf-notice-text{margin:0}.preview-section{margin-bottom:var(--spacing-lg)}.preview-section h3{margin-bottom:var(--spacing-md)}.recipe-preview{border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:300px;max-width:100%}.hint-text{margin:0 0 var(--spacing-md)}.recipe-meta-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:var(--spacing-lg)}.recipe-meta-grid .form-group{margin-bottom:0}.confidence-badge{background-color:var(--color-success-badge-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-md);color:var(--color-success);display:inline-block;font-weight:600;padding:var(--spacing-sm) var(--spacing-md)}.confidence-badge,.ocr-hint{margin-bottom:var(--spacing-lg)}.ocr-hint{color:var(--color-text-light);font-size:var(--font-size-sm)}.services-editor{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.service-row{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.service-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.service-input{flex:2 1}.service-count,.service-input{padding:var(--spacing-sm) var(--spacing-md)!important}.service-count{flex:0.5 1;width:80px}.manual-badge{align-items:center;background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:12px;color:var(--color-warning);display:inline-flex;font-size:var(--font-size-xs);gap:3px;padding:2px 8px;white-space:nowrap}.btn-remove{align-items:center;background:none;border:1px solid var(--color-error-border);border-radius:var(--radius-sm);color:var(--color-error);cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;width:32px}.btn-remove:hover{background-color:var(--color-error-bg-hover)}.ocr-raw-text{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.raw-text-toggle{align-items:center;background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:600;gap:var(--spacing-xs);padding:0}.raw-text-box{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);font-family:Courier New,monospace;font-size:var(--font-size-sm);line-height:1.6;margin-top:var(--spacing-md);max-height:150px;overflow-y:auto;padding:var(--spacing-md)}.upload-actions{background-color:var(--color-bg);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-md);justify-content:flex-end;padding:var(--spacing-lg)}@media (max-width:768px){.recipe-upload{padding:var(--spacing-md)}.recipe-upload-container{max-width:100%}.service-row{flex-wrap:wrap}.service-input{flex:100% 1}.upload-actions{flex-direction:column}.recipe-upload .btn{width:100%}}.diagnose-select{position:relative;width:100%}.diagnose-dropdown{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);left:0;max-height:320px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:20}.diagnose-empty{color:var(--color-text-light);font-size:var(--font-size-sm);padding:var(--spacing-md)}.diagnose-group-header{background-color:var(--color-bg);color:var(--color-text-light);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.04em;padding:var(--spacing-xs) var(--spacing-md);position:sticky;text-transform:uppercase;top:0}.diagnose-option{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.diagnose-option.highlighted,.diagnose-option:hover{background-color:var(--color-primary-light)}.diagnose-option-label{color:var(--color-text);font-size:var(--font-size-sm)}.diagnose-option-icd10,.diagnose-option-synonym{color:var(--color-text-light);font-size:var(--font-size-xs)}.diagnose-option-icd10{white-space:nowrap}.confirm-dialog{max-width:440px}.confirm-dialog-icon{color:var(--color-warning);vertical-align:-3px}.confirm-dialog-body{padding:var(--spacing-lg)}.confirm-dialog-body p{color:var(--color-text);margin-bottom:0}.confirm-dialog .form-actions{border-top:none;margin-top:0;padding:0 var(--spacing-lg) var(--spacing-lg)}.leistungs-selector{display:flex;flex-direction:column;gap:var(--spacing-md)}.hint-text{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}.auto-fit-toggle,.erstbehandlung-toggle{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-weight:600;gap:var(--spacing-sm);margin-bottom:0}.auto-fit-toggle input,.erstbehandlung-toggle input{cursor:pointer;width:auto}.loading-state{padding:var(--spacing-xl);text-align:center}.loading-state p{color:var(--color-text-light);margin-bottom:0;margin-top:var(--spacing-md)}.match-info{align-items:center;color:var(--color-primary);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm);margin:0}.match-info.muted{color:var(--color-text-light)}.package-cards{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.package-card{background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;padding:var(--spacing-md);transition:all .2s ease}.package-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.package-card.selected{background-color:var(--color-primary-light);border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.package-card-header{align-items:flex-start;display:flex;gap:var(--spacing-sm);justify-content:space-between;margin-bottom:var(--spacing-sm)}.package-card-header h4{color:var(--color-text);flex:1 1;font-size:var(--font-size-base);margin:0}.package-total{color:var(--color-primary);font-weight:700;white-space:nowrap}.package-card-delete{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-light);cursor:pointer;display:inline-flex;justify-content:center;padding:2px}.package-card-delete:hover{background-color:var(--color-error-bg);color:var(--color-error)}.package-chips{display:flex;flex-wrap:wrap;gap:6px}.package-card.infeasible{opacity:.55}.package-infeasible-hint{align-items:center;color:var(--color-warning);display:flex;font-size:var(--font-size-xs);gap:4px;margin:var(--spacing-sm) 0 0}.learned-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.package-section-heading{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:700;letter-spacing:.03em;margin:0;text-transform:uppercase}.learned-section .package-card{border-color:var(--color-primary)}.templates-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.templates-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between}.templates-section-header .package-section-heading{margin:0}.template-diagnose-checkbox{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-weight:500;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.template-diagnose-checkbox input{cursor:pointer;width:auto}.chip{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);display:inline-block;font-size:var(--font-size-xs);font-weight:600;padding:2px 10px}.package-card.selected .chip{background-color:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary)}.editor-section{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;padding:var(--spacing-lg)}.editor-section,.editor-toolbar{display:flex;gap:var(--spacing-md)}.editor-toolbar{align-items:center;flex-wrap:wrap;justify-content:space-between}.positions-table{background-color:var(--color-surface);border-radius:var(--radius-md);margin-bottom:0;overflow:hidden}.positions-table td,.positions-table th{font-size:var(--font-size-sm)}.factor-input{padding:var(--spacing-xs) var(--spacing-sm);width:80px}.factor-input.invalid{background-color:var(--color-error-bg);border-color:var(--color-error)}.btn-icon{background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-light);padding:var(--spacing-xs);transition:all .15s ease}.btn-icon:hover{color:var(--color-error)}.catalog-picker{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.catalog-picker-header{border-bottom:1px solid var(--color-border);padding:var(--spacing-sm) var(--spacing-md)}.catalog-picker-header,.catalog-search{align-items:center;display:flex;gap:var(--spacing-sm)}.catalog-search{color:var(--color-text-light);flex:1 1}.catalog-search input{border:none;padding:var(--spacing-xs) 0}.catalog-search input:focus{box-shadow:none}.catalog-list{max-height:320px;overflow-y:auto}.catalog-group-header{background-color:var(--color-bg);color:var(--color-text-light);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.04em;padding:var(--spacing-xs) var(--spacing-md);position:sticky;text-transform:uppercase;top:0}.catalog-row{align-items:center;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.catalog-row:last-child{border-bottom:none}.catalog-row:hover:not(.disabled){background-color:var(--color-primary-light)}.catalog-row.disabled{cursor:not-allowed;opacity:.5}.catalog-code{color:var(--color-primary);font-weight:700;min-width:42px}.catalog-description{color:var(--color-text);flex:1 1;font-size:var(--font-size-sm)}.catalog-price{color:var(--color-text);font-weight:600;white-space:nowrap}.role-badge{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text-light);font-size:var(--font-size-xs);padding:2px 8px;white-space:nowrap}.role-badge.role-untersuchung{border-color:var(--color-primary-light);color:var(--color-primary)}.role-badge.role-haupttherapie{color:var(--color-success)}.catalog-reason{color:var(--color-text-light);font-size:var(--font-size-xs);white-space:nowrap}.catalog-empty{color:var(--color-text-light);font-size:var(--font-size-sm);padding:var(--spacing-lg);text-align:center}.contraindication-warnings{background-color:var(--color-warning-tint);border-left:3px solid var(--color-warning);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md)}.contraindication-warnings p{align-items:flex-start;color:var(--color-warning);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm);margin:0}.contraindication-warnings svg{flex-shrink:0;margin-top:2px}.summary-bar{align-items:center;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg)}.summary-item{display:flex;flex-direction:column;gap:2px}.summary-item span{color:var(--color-text-light);font-size:var(--font-size-xs);letter-spacing:.03em;text-transform:uppercase}.summary-item strong{color:var(--color-text);font-size:var(--font-size-lg)}.summary-icon{align-items:center;display:flex;margin-left:auto}.summary-bar.summary-success{border-color:var(--color-success)}.summary-bar.summary-success .summary-icon{color:var(--color-success)}.summary-bar.summary-warning{border-color:var(--color-warning)}.summary-bar.summary-error{border-color:var(--color-error)}.summary-bar.summary-error .summary-icon{color:var(--color-error)}.summary-message{align-items:center;border-radius:var(--radius-md);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm);margin:0;padding:var(--spacing-sm) var(--spacing-md)}.summary-message.error{background-color:var(--color-error-bg);border-left:3px solid var(--color-error);color:var(--color-error)}.summary-message.warning{background-color:var(--color-warning-tint);border-left:3px solid var(--color-warning);color:var(--color-warning)}.btn-confirm{align-self:flex-end}@media (max-width:768px){.package-cards{grid-template-columns:1fr}.summary-bar{flex-wrap:wrap;gap:var(--spacing-md)}.btn-confirm{align-self:stretch}}.session-billing-modal{max-width:820px}.session-billing-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.session-billing-success{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-lg);text-align:center}.session-billing-success-icon{color:var(--color-success)}.session-billing-success p{color:var(--color-text);font-size:var(--font-size-lg);margin:0}.session-billing-success .form-actions{flex-wrap:wrap;width:100%}.session-billing-actions{align-items:flex-start}.session-billing-action{align-items:stretch;display:flex;flex:1 1;flex-direction:column}.session-billing-action .btn,.session-billing-success .form-actions .btn{min-height:44px}.session-billing-action .field-hint{text-align:center}@media (max-width:768px){.session-billing-success .form-actions .btn{width:100%}.session-billing-actions{align-items:stretch;flex-direction:column-reverse}}.invoice-list-header-card{margin-bottom:var(--spacing-lg)}.invoice-list-header{align-items:center;display:flex;justify-content:space-between}.invoice-list-header h2{margin:0}.invoice-table-wrapper{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.invoice-table{margin-bottom:0}.invoice-table th{white-space:nowrap}.invoice-row{cursor:pointer}.invoice-expand-cell,.invoice-row-cancelled{color:var(--color-text-light)}.invoice-expand-cell{width:32px}.invoice-number-draft{color:var(--color-text-light);font-style:italic}.invoice-type-meta{color:var(--color-text-light);font-size:var(--font-size-xs);white-space:nowrap}.invoice-list-error{align-items:center;flex-wrap:wrap}.invoice-amount-cancelled{color:var(--color-text-light);text-decoration:line-through}.invoice-actions{display:flex;gap:var(--spacing-xs);white-space:nowrap}.btn-icon{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.btn-icon:hover{background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.btn-icon:disabled{cursor:not-allowed;opacity:.5}.btn-icon-danger:hover{background-color:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.invoice-status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:600;gap:4px;padding:4px 10px;white-space:nowrap}.status-draft{background-color:var(--color-neutral-bg);color:var(--color-text-light)}.status-sent{background-color:var(--color-info-bg);color:var(--color-info)}.status-overdue{background-color:var(--color-error-bg);color:var(--color-error)}.status-paid{background-color:var(--color-success-bg);color:var(--color-success)}.status-cancelled{background-color:var(--color-cancelled-bg);color:var(--color-text-light);text-decoration:line-through}.invoice-status-cell{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--spacing-xs)}.reminder-count-badge{align-items:center;background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:999px;color:var(--color-warning);display:inline-flex;font-size:var(--font-size-xs);font-weight:700;gap:3px;padding:2px 8px;white-space:nowrap}.invoice-reminders{border-top:1px solid var(--color-border);font-size:var(--font-size-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md)}.invoice-reminders-list{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-sm)}.invoice-reminder-link{align-items:center;color:var(--color-primary);display:inline-flex;font-size:var(--font-size-sm);font-weight:600;gap:4px}.invoice-detail-row td{background-color:var(--color-bg);padding:0}.invoice-detail{padding:var(--spacing-lg)}.invoice-detail-diagnose,.invoice-positions-table{margin-bottom:var(--spacing-md)}.invoice-positions-table{background-color:var(--color-surface);border-radius:var(--radius-md);overflow:hidden}.invoice-positions-table td,.invoice-positions-table th{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md)}.invoice-detail-dates{color:var(--color-text-light);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--spacing-lg)}.invoice-detail-dates strong{color:var(--color-text)}@media (max-width:768px){.invoice-table-wrapper{overflow-x:auto}.invoice-table{min-width:640px}.invoice-detail-dates{flex-direction:column;gap:var(--spacing-xs)}}.bodychart{gap:var(--spacing-md)}.bodychart,.bodychart-toolbar{display:flex;flex-direction:column}.bodychart-kinds,.bodychart-toolbar{gap:var(--spacing-sm)}.bodychart-kinds{grid-gap:var(--spacing-sm);display:grid;grid-template-columns:repeat(4,1fr)}.bodychart-kind{align-items:center;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:600;gap:var(--spacing-sm);justify-content:center;line-height:1.2;min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);text-align:center}.bodychart-kind:hover{background-color:var(--color-bg)}.bodychart-kind.active{background-color:var(--color-primary-light);border-color:var(--color-primary)}.bodychart-swatch{border-radius:50%;display:inline-block;flex:none;height:14px;width:14px}.bodychart-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.bodychart-actions .btn{min-height:44px}.bodychart-canvas{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0 auto;max-width:720px;overflow:hidden;position:relative;width:100%}.bodychart-canvas img{display:block;pointer-events:none}.bodychart-canvas img,.bodychart-overlay{-webkit-touch-callout:none;height:100%;user-select:none;-webkit-user-select:none;width:100%}.bodychart-overlay{left:0;position:absolute;top:0}.bodychart:not(.bodychart-readonly) .bodychart-overlay{cursor:crosshair;touch-action:none}.bodychart-hint{margin-bottom:0}.bodychart-legend{color:var(--color-text-light);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--spacing-xs) var(--spacing-lg);list-style:none}.bodychart-legend li{align-items:center;display:inline-flex;gap:var(--spacing-sm)}.bodychart-compact{gap:0}.bodychart-compact .bodychart-canvas{border-radius:var(--radius-sm)}@media (max-width:480px){.bodychart-kinds{grid-template-columns:repeat(2,1fr)}.bodychart-actions .btn{flex:1 1 auto}}.finding-editor{max-width:860px}.finding-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr}.finding-editor .field-hint{display:block;margin-top:var(--spacing-xs)}.finding-nrs{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.finding-nrs-button{background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;flex:none;font-size:var(--font-size-lg);font-weight:700;height:48px;width:48px}.finding-nrs-button:hover:not(:disabled){background-color:var(--color-bg)}.finding-nrs-button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.finding-nrs-button:disabled{cursor:not-allowed;opacity:.5}.finding-photo-phase{margin-bottom:var(--spacing-lg)}.finding-photo-phase-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-sm)}.finding-photo-phase-header h3{font-size:var(--font-size-lg);margin:0}.finding-compare-btn,.finding-photo-phase-header .btn{min-height:44px}.finding-photo-grid{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.finding-photo{aspect-ratio:1;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;position:relative}.finding-photo-open{background:none;border:none;cursor:zoom-in;display:block;height:100%;padding:0;width:100%}.finding-photo-open img{display:block;height:100%;object-fit:cover;width:100%}.finding-photo-delete{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-error);cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:var(--spacing-xs);top:var(--spacing-xs);width:44px}.finding-photo-delete:hover{background-color:var(--color-error-bg-hover)}.finding-compare-btn{margin-top:var(--spacing-sm)}.finding-lightbox{background-color:rgba(0,0,0,.85);cursor:zoom-out;padding:var(--spacing-md);z-index:1100}.finding-lightbox img{max-height:100%;max-width:100%;object-fit:contain}.finding-lightbox-close{align-items:center;background-color:var(--color-surface);border:none;border-radius:50%;color:var(--color-text);cursor:pointer;display:flex;height:48px;justify-content:center;position:absolute;right:var(--spacing-md);top:var(--spacing-md);width:48px}.finding-compare-overlay{z-index:1050}.finding-compare{max-width:1100px}.finding-compare-body{padding:var(--spacing-lg)}.finding-compare-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr;margin-bottom:var(--spacing-lg)}.finding-compare-cell{margin:0}.finding-compare-cell figcaption{color:var(--color-text);font-weight:700;margin-bottom:var(--spacing-xs)}.finding-compare-cell img{border:1px solid var(--color-border);border-radius:var(--radius-md);display:block;height:auto;width:100%}.finding-compare-empty{align-items:center;border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);display:flex;justify-content:center;min-height:160px}@media (min-width:768px){.finding-compare-row{grid-template-columns:1fr 1fr}}@media (max-width:480px){.finding-row{gap:0;grid-template-columns:1fr}.finding-compare-body{padding:var(--spacing-md)}}.patient-form-fields{display:flex;flex-direction:column;gap:var(--spacing-xl)}.patient-form-section h3{color:var(--color-primary);margin-bottom:var(--spacing-md)}.patient-form-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.patient-form-grid .form-group{margin-bottom:0}.patient-form-span-2{grid-column:span 2}.field-error,.field-hint{font-size:var(--font-size-sm)}@media (max-width:600px){.patient-form-span-2{grid-column:span 1}}.anamnesis-fields{display:flex;flex-direction:column}.pain-level-row{align-items:center;display:flex;gap:var(--spacing-lg)}.pain-level-slider{accent-color:var(--color-primary);flex:1 1;height:44px;width:auto}.pain-level-value{color:var(--color-primary);font-size:var(--font-size-xl);font-weight:700;min-width:2.5em;text-align:center}.pain-level-unknown{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.pain-level-unknown input{height:20px;width:20px}.conditions-checklist{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.tri-state-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between}.tri-state-label{color:var(--color-text);font-weight:500}.tri-state-options{border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex;flex-shrink:0;overflow:hidden}.tri-state-option{background-color:var(--color-surface);border:none;border-right:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;font-size:var(--font-size-sm);font-weight:600;min-height:44px;padding:var(--spacing-sm) var(--spacing-md)}.tri-state-option:last-child{border-right:none}.tri-state-option.selected{background-color:var(--color-primary);color:var(--color-on-primary)}.tri-state-option:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.tri-state-row{align-items:flex-start;flex-direction:column}.tri-state-options{width:100%}.tri-state-option{flex:1 1}}.contraindication-checklist{grid-gap:var(--spacing-sm);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding:var(--spacing-md)}.contraindication-checkbox{align-items:flex-start;cursor:pointer;display:flex;font-weight:400;gap:var(--spacing-sm);min-height:44px;padding:var(--spacing-xs)}.contraindication-checkbox input{flex-shrink:0;height:20px;margin-top:2px;width:20px}.signature-pad{display:flex;flex-direction:column;gap:var(--spacing-sm)}.signature-pad-header{align-items:center;display:flex;justify-content:space-between}.signature-pad-label{color:var(--color-text);font-weight:600}.signature-pad-canvas-wrap{background-color:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-md);overflow:hidden;position:relative;width:100%}.signature-pad-canvas{cursor:crosshair;display:block;touch-action:none;width:100%}.signature-pad-disabled .signature-pad-canvas{cursor:not-allowed;opacity:.6}.signature-pad-placeholder{color:var(--color-text-light);font-size:var(--font-size-sm);left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.consent-section{display:flex;flex-direction:column;gap:var(--spacing-lg)}.consent-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.consent-card-header{align-items:center;display:flex;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-sm)}.consent-card-header h4{margin:0}.consent-badge-required{background-color:var(--color-primary-light);border-radius:999px;color:var(--color-primary);flex-shrink:0;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.consent-text-box{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);max-height:180px;overflow-y:auto;padding:var(--spacing-md)}.consent-text-box p{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.consent-text-box p:last-child{margin-bottom:0}.consent-checkbox{align-items:center;cursor:pointer;display:flex;font-weight:600;gap:var(--spacing-sm);min-height:44px}.consent-checkbox input{flex-shrink:0;height:22px;width:22px}.consent-check-icon{color:var(--color-success)}.consent-signature-block{border-top:2px solid var(--color-primary-light);display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-lg)}.info-notes{margin-top:var(--spacing-md)}.anamnesis-stand{color:var(--color-text-light);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.consent-modal{max-width:640px}.recipe-card-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between}.recipe-card-header h3{margin-bottom:var(--spacing-xs)}.recipe-card-prescriber{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}.recipe-card-badges{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.recipe-status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:700;padding:4px 10px;white-space:nowrap}.recipe-status-badge.status-aktiv{background-color:var(--color-primary-light);color:var(--color-primary)}.recipe-status-badge.status-abgeschlossen{background-color:var(--color-neutral-bg);color:var(--color-text-light)}.recipe-deadline-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:600;padding:4px 10px;white-space:nowrap}.recipe-deadline-badge.deadline-ok{background-color:var(--color-neutral-bg);color:var(--color-text-light)}.recipe-deadline-badge.deadline-warn{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.recipe-deadline-badge.deadline-expired{background-color:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error)}.recipe-usage{margin-top:var(--spacing-md)}.recipe-usage-label{color:var(--color-text-light);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.recipe-usage-bar{background-color:var(--color-border);border-radius:999px;height:8px;overflow:hidden}.recipe-usage-bar-fill{background-color:var(--color-primary);border-radius:999px;height:100%;transition:width .2s ease}.recipe-card-notes{color:var(--color-text-light);margin-top:var(--spacing-md);white-space:pre-wrap}.recipe-card-actions{border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md)}.recipe-edit-form .form-group:last-of-type{margin-bottom:0}.treatment-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-md)}.treatment-card-heading{align-items:center;display:flex;gap:var(--spacing-sm)}.treatment-card-heading h3{margin:0}.treatment-kind-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:700;padding:4px 10px;white-space:nowrap}.treatment-kind-badge.kind-physio{background-color:var(--color-primary-light);color:var(--color-primary)}.treatment-kind-badge.kind-heilpraktiker{background-color:var(--color-info-bg);color:var(--color-info)}.treatment-open-badge{align-items:center;background-color:var(--color-warning-bg);border-radius:999px;color:var(--color-warning);display:inline-flex;font-size:var(--font-size-xs);font-weight:700;padding:4px 10px;white-space:nowrap}.treatment-open-actions{align-items:center;display:inline-flex;gap:var(--spacing-md)}.treatment-open-actions .link-button{align-items:center;display:inline-flex;min-height:44px}.treatment-diagnose{margin-bottom:var(--spacing-md)}.treatment-recipe-link{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0 0 var(--spacing-md)}.treatment-notes{color:var(--color-text-light);margin-bottom:var(--spacing-md);white-space:pre-wrap}.treatment-card-actions{border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-md)}.documents-table .document-title{display:block;font-weight:600;overflow-wrap:anywhere}.documents-table .document-file-name{color:var(--color-text-light);display:block;font-size:var(--font-size-xs);overflow-wrap:anywhere}.document-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:flex-end}.document-actions .btn,.document-upload-btn{min-height:44px}.document-actions .btn{flex:1 1 auto}.document-upload-file{margin:0;overflow-wrap:anywhere}@media (max-width:640px){.consents-table thead,.documents-table thead{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;width:1px}.consents-table,.consents-table tbody,.documents-table,.documents-table tbody{display:block}.consents-table tr,.documents-table tr{border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md) 0}.consents-table td,.documents-table td{border-bottom:none;display:block;padding:0}.documents-table .document-title-cell{order:-1}.consents-table td[data-label],.documents-table td[data-label]{color:var(--color-text-light);font-size:var(--font-size-sm)}.consents-table td:first-child{font-weight:600}.consents-table td[data-label]:before,.documents-table td[data-label]:before{content:attr(data-label) ": "}.document-actions{justify-content:flex-start;margin-top:var(--spacing-sm)}}.finding-card-main{align-items:flex-start;display:flex;gap:var(--spacing-lg);justify-content:space-between}.finding-card-info{flex:1 1;min-width:0}.finding-card-heading{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.finding-card-heading h3{margin:0}.finding-type-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:700;padding:4px 10px;white-space:nowrap}.finding-type-badge.type-erstbefund{background-color:var(--color-primary-light);color:var(--color-primary)}.finding-type-badge.type-zwischenbefund{background-color:var(--color-info-bg);color:var(--color-info)}.finding-type-badge.type-abschlussbefund{background-color:var(--color-neutral-bg);color:var(--color-text-light)}.finding-card-line{font-size:var(--font-size-sm);margin:0 0 var(--spacing-xs)}.finding-card-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;margin:0 0 var(--spacing-xs);overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap}.finding-card-preview{flex:none;width:140px}.finding-card-actions{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md)}.finding-card-actions .btn{min-height:44px}.finding-pdf-photos{align-items:center;cursor:pointer;display:inline-flex;font-weight:400;gap:var(--spacing-xs);margin:0;min-height:44px}.finding-pdf-photos input{accent-color:var(--color-primary);height:20px;width:20px}@media (max-width:480px){.finding-card-main{flex-direction:column-reverse}.finding-card-preview{width:160px}}.card .form-actions{align-items:center}.card .form-actions .link-button{flex:0 0 auto;margin-right:auto;padding:var(--spacing-sm) var(--spacing-md)}@media (max-width:768px){.card .form-actions .link-button{margin-right:0;order:3}}.appearance-settings .btn,.appearance-settings input[type=text],.appearance-settings textarea{min-height:44px}.appearance-section{border-top:1px solid var(--color-border);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.appearance-section h3,.appearance-section-hint{margin-bottom:var(--spacing-md)}.appearance-section-hint{margin-top:calc(var(--spacing-sm)*-1)}.appearance-wide{grid-column:1/-1}.appearance-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg)}.appearance-notice{margin-bottom:var(--spacing-md)}.appearance-logos{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--spacing-lg)}.appearance-logo{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0;padding:var(--spacing-md)}.appearance-logo-preview{align-items:center;background-color:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-sm);display:flex;height:96px;justify-content:center;padding:var(--spacing-sm)}.appearance-logo-preview img{max-height:100%;max-width:100%;object-fit:contain}.appearance-logo-body{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.appearance-logo-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.appearance-logo-actions label{margin:0}.appearance-logo-actions label.is-disabled{opacity:.5;pointer-events:none}.appearance-file-input{height:1px;opacity:0;overflow:hidden;position:absolute;width:1px}.appearance-file-input:focus-visible+label{outline:3px solid var(--color-primary);outline-offset:2px}.appearance-groups{display:flex;flex-direction:column;gap:var(--spacing-md)}.appearance-group{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.appearance-group summary{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-weight:600;gap:var(--spacing-md);list-style:none;min-height:44px;padding:var(--spacing-sm) var(--spacing-md)}.appearance-group summary::-webkit-details-marker{display:none}.appearance-group-title{flex:1 1;min-width:0}.appearance-group-count{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:400}.appearance-group-chevron{flex-shrink:0;transition:transform .2s ease}.appearance-group[open] .appearance-group-chevron{transform:rotate(180deg)}.appearance-pdf-note{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:0 var(--spacing-md) var(--spacing-md)}.appearance-pdf-note .field-hint{margin:0}.appearance-color-list{border-top:1px solid var(--color-border);display:flex;flex-direction:column}.appearance-color-row{align-items:center;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-sm) var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.appearance-color-row:last-child{border-bottom:none;border-radius:0 0 var(--radius-md) var(--radius-md)}.appearance-color-row.is-changed{background-color:var(--color-primary-light)}.appearance-color-picker{cursor:pointer;flex:0 0 44px;height:44px;min-height:44px;padding:2px;width:44px}.appearance-color-info{flex:1 1 160px;min-width:0}.appearance-color-info label{margin-bottom:0}.appearance-color-info .field-hint{margin-top:0}.appearance-color-hex{flex:0 0 110px;font-family:monospace;text-transform:uppercase;width:110px}@media (max-width:768px){.appearance-logos{grid-template-columns:1fr}.appearance-actions{align-items:stretch;flex-direction:column}.appearance-actions .btn{width:100%}}.settings-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.settings-explainer{color:var(--color-text-light);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg);margin-top:calc(var(--spacing-md)*-1)}.settings-grid{grid-gap:var(--spacing-lg) var(--spacing-xl);display:grid;gap:var(--spacing-lg) var(--spacing-xl);grid-template-columns:repeat(2,1fr)}.settings-grid .form-group{margin-bottom:0}.input-invalid{border-color:var(--color-error)!important}.input-invalid:focus{box-shadow:0 0 0 3px rgba(var(--color-error-rgb),.12)!important}.field-error{color:var(--color-error)}.field-error,.field-warning{display:block;font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.field-warning{color:var(--color-warning)}.field-hint{color:var(--color-text-light);display:block;font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.toggle-field-label{align-items:center;color:var(--color-text);cursor:pointer;display:inline-flex;font-weight:600;gap:var(--spacing-md);min-height:44px}.toggle-checkbox{height:0;opacity:0;position:absolute;width:0}.toggle-switch{background-color:var(--color-border);border-radius:999px;display:inline-block;flex-shrink:0;height:24px;position:relative;transition:background-color .2s ease;width:44px}.toggle-switch:after{background-color:var(--color-surface);border-radius:50%;box-shadow:var(--shadow-sm);content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:20px}.toggle-checkbox:checked+.toggle-switch{background-color:var(--color-primary)}.toggle-checkbox:checked+.toggle-switch:after{transform:translateX(20px)}.toggle-checkbox:focus-visible+.toggle-switch{box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.25)}.settings-save-bar{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);bottom:0;box-shadow:var(--shadow-md);display:flex;gap:var(--spacing-lg);justify-content:flex-end;margin-top:var(--spacing-xl);padding:var(--spacing-lg);position:sticky}.settings-unsaved{color:var(--color-warning)}.settings-saved,.settings-unsaved{align-items:center;display:inline-flex;font-size:var(--font-size-sm);font-weight:600;gap:6px}.settings-saved{color:var(--color-success)}.security-password-section{border-top:1px solid var(--color-border);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.security-password-section h3{margin-bottom:var(--spacing-md)}.password-change-form{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:420px}.password-change-form .form-group{margin-bottom:0}.password-checklist{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0}.password-checklist li{align-items:center;color:var(--color-text-light);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm)}.password-checklist li.password-check-ok{color:var(--color-success)}.contraindication-rows{display:flex;flex-direction:column;gap:var(--spacing-lg)}.contraindication-row{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.contraindication-row-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr)}.contraindication-row-actions{align-items:center;display:flex;gap:var(--spacing-md);justify-content:flex-end}@media (max-width:768px){.contraindication-row-grid,.settings-grid{grid-template-columns:1fr}.settings-save-bar{align-items:stretch;flex-direction:column}.settings-save-bar .btn{width:100%}}.diagnose-create-form,.diagnose-create-toggle{margin-bottom:var(--spacing-lg)}.diagnose-create-form{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.diagnose-create-fields{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr)}.diagnose-create-fields .form-group{margin-bottom:0}.diagnose-create-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-sm)}.diagnose-entry-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagnose-entry{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.diagnose-entry-inactive{opacity:.65}.diagnose-entry-summary{align-items:center;background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-sm);min-height:44px;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.diagnose-entry-summary:hover{background-color:var(--color-bg)}.diagnose-entry-summary-text{align-items:baseline;display:flex;flex:1 1;flex-wrap:wrap;gap:var(--spacing-sm);min-width:0}.diagnose-entry-label{font-weight:600}.diagnose-entry-icd10{color:var(--color-text-light);font-size:var(--font-size-sm)}.diagnose-entry-badge{align-items:center;background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:999px;color:var(--color-warning);display:inline-flex;font-size:var(--font-size-xs);font-weight:600;padding:2px 8px}.diagnose-entry-count{color:var(--color-text-light);font-size:var(--font-size-sm);white-space:nowrap}.diagnose-entry-details{border-top:1px solid var(--color-border);padding:var(--spacing-md)}.diagnose-entry-fields-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr}.diagnose-entry-actions{flex-wrap:wrap;justify-content:space-between;margin-top:var(--spacing-md)}.diagnose-entry-actions,.diagnose-entry-actions-save{align-items:center;display:flex;gap:var(--spacing-sm)}.diagnose-code-select{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagnose-code-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.diagnose-code-empty{color:var(--color-text-light);font-size:var(--font-size-sm)}.diagnose-code-chip{align-items:center;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;display:inline-flex;font-size:var(--font-size-sm);gap:6px;padding:4px 8px}.diagnose-code-chip-inactive{opacity:.6;text-decoration:line-through}.diagnose-code-chip-remove{align-items:center;background:none;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;display:inline-flex;height:20px;justify-content:center;width:20px}.diagnose-code-chip-remove:hover{background-color:var(--color-surface);color:var(--color-error)}.diagnose-code-picker{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:480px}.diagnose-code-picker-header{align-items:center;border-bottom:1px solid var(--color-border);color:var(--color-text-light);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.diagnose-code-picker-header input{border:none;padding:var(--spacing-xs) 0}.diagnose-code-picker-header input:focus{box-shadow:none}.diagnose-code-picker-close{align-items:center;background:none;border:none;color:var(--color-text-light);cursor:pointer;display:inline-flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.diagnose-code-picker-list{-webkit-overflow-scrolling:touch;max-height:240px;overflow-y:auto}.diagnose-code-picker-empty{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0;padding:var(--spacing-md)}.diagnose-code-picker-row{align-items:center;background:none;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);cursor:pointer;display:flex;font-family:var(--font-family);font-size:var(--font-size-sm);gap:var(--spacing-md);min-height:44px;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.diagnose-code-picker-row:last-child{border-bottom:none}.diagnose-code-picker-row:hover{background-color:var(--color-bg)}.diagnose-code-picker-code{color:var(--color-primary);font-weight:700;white-space:nowrap}@media (max-width:768px){.diagnose-create-fields,.diagnose-entry-fields-row{grid-template-columns:1fr}.diagnose-entry-summary{flex-wrap:wrap}.diagnose-entry-count{padding-left:calc(18px + var(--spacing-sm));width:100%}}.service-catalog-search{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md)}.service-catalog-search input{border:none;padding:var(--spacing-xs) 0}.service-catalog-search input:focus{box-shadow:none}.service-catalog-section{margin-bottom:var(--spacing-lg)}.service-catalog-group{margin-top:var(--spacing-lg)}.service-catalog-group h3{color:var(--color-primary)}.service-catalog-table-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.service-catalog-table{margin-bottom:0;min-width:680px}.service-catalog-table th{white-space:nowrap}.service-catalog-table td{vertical-align:middle}.service-catalog-code{color:var(--color-primary);font-weight:700;white-space:nowrap}.service-catalog-input-narrow{width:90px}.service-row-inactive{opacity:.55}.service-catalog-toggle{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:var(--spacing-sm);margin-bottom:0;min-height:44px;white-space:nowrap}.service-catalog-toggle input{cursor:pointer;height:20px;width:20px}.service-catalog-row-actions{align-items:center;display:flex;gap:var(--spacing-sm);white-space:nowrap}.service-catalog-saved-icon{color:var(--color-success);flex-shrink:0}.service-catalog-row-error{color:var(--color-error);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);max-width:220px;white-space:normal}@media (max-width:768px){.service-catalog-table{min-width:760px}}.intake-row{cursor:pointer}.intake-link-hint{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:400}.intake-collapsible-header{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:var(--spacing-sm);min-height:44px;padding:0;text-align:left;width:100%}.invite-status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.3px;padding:4px 10px;text-transform:uppercase}.invite-status-open{background-color:var(--color-primary-light);color:var(--color-primary)}.invite-status-submitted{background-color:var(--color-info-bg-alt);color:var(--color-info)}.invite-status-approved{background-color:var(--color-success-bg);color:var(--color-success)}.invite-status-expired,.invite-status-rejected{background-color:var(--color-expired-bg);color:var(--color-text-light)}.compare-row-diff{background-color:var(--color-warning-tint)}.compare-row-diff td:nth-child(2){color:var(--color-primary-dark);font-weight:700}.intake-summary{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.intake-summary-section{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.intake-summary-section-header{align-items:center;display:flex;gap:var(--spacing-md);justify-content:space-between;margin-bottom:var(--spacing-md)}.intake-summary-section-header h3{color:var(--color-primary);margin:0}.intake-summary-edit-btn{flex-shrink:0;min-height:44px}.intake-summary-empty{color:var(--color-text-light);margin:0}.intake-summary-contraindications{gap:var(--spacing-sm);margin-top:var(--spacing-md)}.intake-summary-consents,.intake-summary-contraindications{display:flex;flex-direction:column}.intake-summary-consent-row{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-sm) 0}.intake-summary-consent-row:last-child{border-bottom:none}.intake-summary-signer{margin-bottom:0;margin-top:var(--spacing-md)}.intake-summary-signature{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:inline-block;margin-top:var(--spacing-sm);padding:var(--spacing-xs)}.intake-summary-signature img{display:block;max-height:60px;width:auto}@media (max-width:480px){.intake-summary-section-header{flex-wrap:wrap}}.public-intake-page{align-items:center;background-color:var(--color-bg);display:flex;flex-direction:column;min-height:100vh;padding:var(--spacing-lg) var(--spacing-md) var(--spacing-2xl)}.public-intake-header{align-items:center;display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-xl);max-width:640px;width:100%}.public-intake-website-link{flex:0 0 auto;text-decoration:none}.public-intake-header img{flex:0 1 260px;height:auto;max-width:260px;min-width:0}@media (min-width:600px){.public-intake-header{display:grid;grid-template-columns:1fr minmax(0,260px) 1fr}.public-intake-website-link{grid-column:1;justify-self:start}.public-intake-header img{grid-column:2;width:100%}}.public-intake-content{max-width:640px;width:100%}.public-intake-message{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-light);display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-2xl) var(--spacing-lg);text-align:center}.public-intake-message svg{color:var(--color-warning)}.public-intake-success svg{color:var(--color-success)}.public-intake-message p{color:var(--color-text);font-size:var(--font-size-lg);margin:0}.public-intake-progress{margin-bottom:var(--spacing-lg)}.public-intake-progress-bar{background-color:var(--color-border);border-radius:999px;height:8px;margin-bottom:var(--spacing-sm);overflow:hidden;width:100%}.public-intake-progress-fill{background-color:var(--color-primary);height:100%;transition:width .2s ease}.public-intake-progress-label{color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:600}@media (max-width:480px){.public-intake-page{padding:var(--spacing-md) var(--spacing-sm) var(--spacing-xl)}}.treatment-groups{display:flex;flex-direction:column;gap:var(--spacing-lg)}.treatment-group-card{display:flex;flex-direction:column;gap:var(--spacing-md)}.treatment-group-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between;padding-bottom:var(--spacing-md)}.treatment-group-patient-link{color:var(--color-text);font-size:var(--font-size-lg);font-weight:600}.treatment-group-patient-link:hover{color:var(--color-primary)}.treatment-mode-select{min-height:44px;min-width:160px;width:auto}.treatment-mode-hint{align-items:center;color:var(--color-text-light);display:flex;font-weight:600;min-height:44px}.treatment-rows{display:flex;flex-direction:column;gap:var(--spacing-xs)}.treatment-row{align-items:flex-start;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--spacing-md);min-height:44px;padding:var(--spacing-sm) var(--spacing-sm)}.treatment-row:hover{background-color:var(--color-bg)}.treatment-row input[type=checkbox]{cursor:pointer;height:20px;margin-top:2px;min-width:20px;width:20px}.treatment-row-text{align-items:baseline;display:flex;flex:1 1;flex-wrap:wrap;gap:var(--spacing-sm);min-width:0}.treatment-row-date{color:var(--color-text);font-weight:600;white-space:nowrap}.treatment-row-services{color:var(--color-text-light)}.treatment-row-amount,.treatment-row-diagnose{color:var(--color-text)}.treatment-row-amount{font-weight:600;margin-left:auto;white-space:nowrap}.treatment-tax-hint{margin:0}.treatment-row-notes{color:var(--color-text-light);flex-basis:100%;font-size:var(--font-size-sm);font-style:italic}.treatment-group-footer{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:space-between;padding-top:var(--spacing-md)}.treatment-group-total{color:var(--color-text-light)}.treatment-group-total strong{color:var(--color-text);font-size:var(--font-size-lg)}.treatment-group-success{align-items:center;color:var(--color-success);display:flex;font-weight:600;gap:var(--spacing-md)}@media (max-width:768px){.treatment-group-footer{align-items:stretch;flex-direction:column}.treatment-group-footer .btn{width:100%}.treatment-group-success{flex-wrap:wrap}}.open-invoice-treatment-count{color:var(--color-text-light);font-size:var(--font-size-xs);white-space:nowrap}.open-invoices-summary{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:var(--spacing-lg)}.open-invoices-summary-card{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-primary);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg)}.open-invoices-summary-card.danger{background-color:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error)}.open-invoices-summary-value{color:var(--color-text);display:block;font-size:var(--font-size-2xl);font-weight:700;line-height:1.1}.open-invoices-summary-card.danger .open-invoices-summary-value{color:inherit}.open-invoices-summary-label{color:var(--color-text-light);display:block;font-size:var(--font-size-sm);margin-top:2px}.open-invoices-filter{margin-bottom:var(--spacing-lg)}.open-invoices-filter-toggle{align-items:center;color:var(--color-text);cursor:pointer;display:inline-flex;font-weight:500;gap:var(--spacing-sm);margin-bottom:0;min-height:44px}.open-invoices-filter-toggle input{cursor:pointer;height:20px;width:20px}.open-invoices-table-wrapper{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.open-invoices-table{margin-bottom:0}.open-invoices-table th{white-space:nowrap}.open-invoice-row-overdue td{background-color:var(--color-overdue-row-bg)}.open-invoice-status{color:var(--color-text-light);font-weight:600}.open-invoice-status.status-danger{color:var(--color-error)}.open-invoice-reminder-toggle{align-items:center;background:none;border:none;color:var(--color-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:2px;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm)}.open-invoice-actions{display:flex;gap:var(--spacing-xs);white-space:nowrap}.open-invoice-detail-row td{background-color:var(--color-bg);padding:0}.open-invoice-reminder-list{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.open-invoice-reminder-link{align-items:center;color:var(--color-primary);display:inline-flex;font-size:var(--font-size-sm);font-weight:600;gap:6px}@media (max-width:768px){.open-invoices-table-wrapper{overflow-x:auto}.open-invoices-table{min-width:720px}}:root{--color-primary:#e31d1d;--color-primary-dark:#b8151a;--color-primary-light:#f5e6e6;--color-on-primary:#fff;--color-primary-rgb:227,29,29;--color-text:#333;--color-text-light:#666;--color-signature-ink:#1a1a1a;--color-bg:#f9f9f9;--color-bg-header:#e8d5d8;--color-surface:#fff;--color-border:#ddd;--color-neutral-bg:#eee;--color-cancelled-bg:#f0f0f0;--color-expired-bg:#f5f5f5;--color-success:#4caf50;--color-success-bg:#f1f8f4;--color-success-badge-bg:#e8f5e9;--color-success-border:#c8e6c9;--color-warning:#ff9800;--color-warning-bg:#fff3e0;--color-warning-tint:#fff9f4;--color-warning-border:#ffe0b2;--color-error:#f44336;--color-error-dark:#c62828;--color-error-bg:#fef5f5;--color-error-bg-hover:#ffebee;--color-overdue-row-bg:#fffbfa;--color-error-border:#ffcdd2;--color-error-rgb:244,67,54;--color-info:#1565c0;--color-info-bg:#e3f0fb;--color-info-bg-alt:#e3f2fd;--color-chart-schmerz:#e53935;--color-chart-ausstrahlung:#fb8c00;--color-chart-taubheit:#1e6fdc;--color-chart-verspannung:#2e9e44;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f9f9;background-color:var(--color-bg);color:#333;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family);line-height:1.6}a{color:#e31d1d;color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:2rem;font-size:var(--font-size-3xl);font-weight:700}h1,h2{margin-bottom:1rem;margin-bottom:var(--spacing-md)}h2{font-size:1.5rem;font-size:var(--font-size-2xl)}h2,h3{font-weight:600}h3{font-size:1.25rem;font-size:var(--font-size-xl);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}p{color:#666;color:var(--color-text-light);margin-bottom:1rem;margin-bottom:var(--spacing-md)}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:1rem;font-size:var(--font-size-base);font-weight:600;gap:.5rem;gap:var(--spacing-sm);justify-content:center;padding:.5rem 1.5rem;padding:var(--spacing-sm) var(--spacing-lg);text-align:center;transition:all .2s ease}.btn-primary{background-color:#e31d1d;background-color:var(--color-primary);color:#fff;color:var(--color-on-primary)}.btn-primary:hover{background-color:#b8151a;background-color:var(--color-primary-dark);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);box-shadow:var(--shadow-md)}.btn-secondary{background-color:#f9f9f9;background-color:var(--color-bg);border:2px solid #e31d1d;border:2px solid var(--color-primary);color:#e31d1d;color:var(--color-primary)}.btn-secondary:hover{background-color:#f5e6e6;background-color:var(--color-primary-light)}.btn-danger{background-color:#f44336;background-color:var(--color-error);color:#fff;color:var(--color-on-primary)}.btn-danger:hover{background-color:#c62828;background-color:var(--color-error-dark);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);box-shadow:var(--shadow-md)}.btn-small{font-size:.875rem;font-size:var(--font-size-sm);padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-md)}.btn:disabled{cursor:not-allowed;opacity:.5}.form-group{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}label{display:block;font-weight:600;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}input,label,select,textarea{color:#333;color:var(--color-text)}input,select,textarea{background-color:#fff;background-color:var(--color-surface);border:1px solid #ddd;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius-md);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family);font-size:1rem;font-size:var(--font-size-base);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .2s ease;width:100%}input:focus,select:focus,textarea:focus{border-color:#e31d1d;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(227,29,29,.1);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1);outline:none}textarea{min-height:100px;resize:vertical}.card{background-color:#fff;background-color:var(--color-surface);border:1px solid #ddd;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--shadow-sm);padding:1.5rem;padding:var(--spacing-lg)}.card:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1);box-shadow:var(--shadow-md);transition:box-shadow .2s ease}table{border-collapse:collapse;margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);width:100%}thead{background-color:#f5e6e6;background-color:var(--color-primary-light);border-bottom:2px solid #e31d1d;border-bottom:2px solid var(--color-primary)}td,th{border-bottom:1px solid #ddd;border-bottom:1px solid var(--color-border);padding:1rem;padding:var(--spacing-md);text-align:left}th{color:#333;color:var(--color-text);font-weight:600}tr:hover{background-color:#f9f9f9;background-color:var(--color-bg)}.alert{border-radius:8px;border-radius:var(--radius-md);display:flex;gap:1rem;gap:var(--spacing-md);margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg)}.alert-success{background-color:#f1f8f4;background-color:var(--color-success-bg);border:1px solid #c8e6c9;border:1px solid var(--color-success-border);color:#4caf50;color:var(--color-success)}.alert-error{background-color:#fef5f5;background-color:var(--color-error-bg);border:1px solid #ffcdd2;border:1px solid var(--color-error-border);color:#f44336;color:var(--color-error)}.alert-warning{background-color:#fff9f4;background-color:var(--color-warning-tint);border:1px solid #ffe0b2;border:1px solid var(--color-warning-border);color:#ff9800;color:var(--color-warning)}.loading{animation:spin 1s linear infinite;border:3px solid #ddd;border-top-color:#e31d1d;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){:root{--font-size-3xl:1.5rem;--font-size-2xl:1.25rem}.card{padding:1rem;padding:var(--spacing-md)}table{font-size:.875rem;font-size:var(--font-size-sm)}td,th{padding:.5rem;padding:var(--spacing-sm)}}