[data-theme=app],[data-theme=app] html,[data-theme=app] body{color:var(--text);height:100%;margin:0;background-color:var(--bg)!important}.app-projects-page{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font);max-width:1200px;margin:0 auto;padding:48px clamp(24px,5vw,64px);overflow-y:auto}.app-projects-page__header{flex-direction:column;gap:20px;margin-bottom:32px;display:flex}.app-projects-page__topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.app-projects-page__company{color:var(--text-secondary);letter-spacing:.01em;font-size:1rem;font-weight:500;display:inline-block}.app-projects-page__actions{align-items:center;gap:8px;display:flex}.app-back-link{margin-bottom:8px;text-decoration:none;display:inline-block}.app-projects-page__hero{justify-content:space-between;align-items:center;gap:16px;display:flex}.app-projects-page__loading,.app-projects-page__empty{text-align:center;color:var(--text-muted);padding:80px 0}.app-projects-page__title{margin:0;font-size:1.75rem;font-weight:600;line-height:1.2}.app-projects-page__section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.app-projects-page__section-toggle{cursor:pointer;font-family:var(--font);color:var(--text-muted);transition:color var(--motion-fast);background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}.app-projects-page__section-toggle:hover{color:var(--text-secondary)}.app-projects-page__section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.75rem;font-weight:600}.app-projects-page__hero-section{margin-bottom:32px}.app-projects-page__group{margin-bottom:28px}.app-projects-page__hero-section .projects-page__list{margin-top:var(--space-3)}.app-projects-page__alert{margin-bottom:var(--space-4)}@keyframes v2-field-pulse{0%{box-shadow:0 0 0 0 var(--warn-border)}60%{box-shadow:0 0 0 6px #b4821e00}to{box-shadow:0 0 #b4821e00}}@keyframes v2-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes v2-spin{to{transform:rotate(360deg)}}.auth-gate{background:var(--bg);min-height:100dvh;font-family:var(--font);color:var(--text);justify-content:center;align-items:center;display:flex;position:relative}.auth-gate__home-link{z-index:1;width:48px;height:48px;color:var(--text-secondary);transition:color var(--motion-fast);justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:absolute;top:20px;left:20px}.auth-gate__home-link:hover{color:var(--text)}.auth-overlay{z-index:var(--z-toast);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-card{background:var(--surface);border:1px solid var(--border-dim);width:360px;transition:width var(--motion-fast) ease;padding:40px 32px;position:relative}.auth-message-slot{flex-direction:column;justify-content:center;display:flex}.auth-message-slot:not(:empty){min-height:34px}.auth-card__close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:20px;position:absolute;top:12px;right:12px}.auth-card__brand{letter-spacing:-.02em;color:var(--text);margin-bottom:8px;font-size:22px;font-weight:300}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form .field{margin-bottom:0}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field label{color:var(--text-secondary);letter-spacing:.04em;font-size:11px}.auth-field input::placeholder{color:var(--text-muted);opacity:1}.auth-field input[type=text],.auth-field input[type=email],.auth-field input[type=password],.auth-field input[type=tel]{border:1px solid var(--border);color:var(--text);font-size:14px;font-family:var(--font);transition:border-color var(--motion-fast);box-sizing:border-box;background:#0003;outline:none;width:100%;min-width:0;padding:9px 12px}.auth-field input:focus{border-color:#16a34a80}.auth-row>.auth-field{min-width:0}.auth-step{color:var(--text-secondary);letter-spacing:.04em;margin:0;font-size:11px}.auth-btn{background:var(--btn-green);color:var(--text-on-accent);font-size:13px;font-weight:500;font-family:var(--font);cursor:pointer;transition:background var(--motion-fast);border:none;padding:10px 18px}.auth-btn:hover{background:var(--btn-green-hover)}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-providers{flex-direction:column;gap:10px;margin-top:4px;display:flex}.auth-divider{color:var(--text-muted);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-dim);flex:1;height:1px}.auth-btn--provider{min-height:40px;color:var(--text);border:1px solid var(--border);background:0 0;justify-content:center;align-items:center;gap:10px;font-weight:600;display:flex}.auth-btn--provider:hover{background:var(--surface-hover)}.auth-btn--provider:disabled .auth-provider-icon{opacity:.7}.auth-provider-icon{flex:none;line-height:0;display:inline-flex}.auth-provider-label{line-height:1}.auth-btn--bankid{border-color:#2359718c}.auth-btn--bankid:hover{background:#23597124;border-color:#235971}.app-sidebar__settings-row .seg{margin-bottom:0}@keyframes v2-bsheet-fade{0%{opacity:0}to{opacity:1}}@keyframes v2-bsheet-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width:600px){.app-shell{grid-template:"topbar"44px"main"1fr"footer"/1fr}.app-shell--right-collapsed{grid-template-columns:1fr}.app-sidebar{display:none}.app-drawer .app-sidebar{width:100%;height:100%;min-height:100%;display:flex}.app-drawer .app-sidebar__back-btn{display:flex}.app-right-panel{display:none}.app-topbar{padding:0 12px}.app-topbar__breadcrumb{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.app-topbar__back-link{min-height:44px;color:var(--text);border-right:none;border-radius:6px;align-items:center;gap:6px;margin-right:8px;padding:0 10px;font-size:14px;text-decoration:none;display:inline-flex}.app-topbar__back-link:hover{background:var(--surface-2)}.app-topbar__back-link-full{display:none}.app-topbar__back-link-short{display:inline}.app-mobile-nav{display:flex}.app-center-head{padding:12px 16px}.app-tab--viz-mobile{display:inline-flex}.app-right-panel-wrap--mobile-open{z-index:var(--z-overlay);background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.app-right-panel-wrap--mobile-open .app-right-panel{border:none;flex-direction:column;flex:1;width:auto;display:flex;position:static}.app-right-panel-wrap--mobile-open .app-right-panel__collapse-btn,.app-right-panel-wrap--mobile-open .app-right-panel__collapsed-icon{display:none}.app-right-panel-wrap--mobile-open .app-right-panel__mobile-close{display:flex}.app-footer{padding:8px 12px max(10px, env(safe-area-inset-bottom));flex-wrap:wrap;gap:6px;height:auto;min-height:56px}.app-footer__costs,.app-footer__spacer{display:none}.app-footer__total-wrap{justify-content:center;width:100%;display:flex}.footer-breakdown{min-width:min(300px,100vw - 24px);right:50%;transform:translate(50%)}.app-footer__actions{gap:8px;width:100%;display:flex}.app-footer__actions>*{flex:1}.app-new-project{padding:24px 16px}.app-new-project__field-row{grid-template-columns:1fr}.app-new-project__method-grid{grid-template-columns:repeat(2,1fr)}.app-new-project__text-row{flex-direction:column;gap:8px}.app-kpi-row{grid-template-columns:1fr;gap:8px}.app-content .add-material__form{grid-template-columns:1fr 1fr;gap:8px}.app-content .add-material__input--qty,.app-content .add-material__input--price{width:100%}.app-content .add-material__btn{grid-column:span 2;width:100%;height:auto;min-height:44px;padding:12px;font-size:.95rem}.app-content .add-material__btn:after{content:"+ Lägg till";font-size:.95rem}.auth-card{max-width:calc(100vw - 32px)}.app-picker{width:auto;z-index:var(--z-overlay);border-radius:0;position:fixed;inset:0}.app-quote-page__header{flex-wrap:wrap;gap:8px;padding:12px 16px}.app-quote-page__actions{flex-wrap:wrap;width:100%}.app-quote-page__actions>*{flex:1;min-height:44px}.app-quote-page__form{padding:16px}.voice-input-bar__mic,.voice-input-bar__submit{min-width:44px;min-height:44px}.voice-input-bar__text{font-size:16px}.parse-confirm{border-left:none;border-right:none;border-radius:0;margin:0 -12px}}@media (max-width:767px){.app-projects-page{padding:20px 16px calc(24px + var(--sa-tabbar-h,62px))}.app-projects-page__topbar{flex-wrap:nowrap;gap:12px;padding-bottom:10px}.app-projects-page__company{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-projects-page__title{white-space:normal;font-size:1.45rem}.app-projects-page__hero{align-items:stretch;gap:var(--space-3);flex-direction:column}.app-projects-page__hero .btn{width:100%}.app-back-link{margin:-13px -12px -5px;padding:13px 12px}.projects-kpi-grid{grid-template-columns:1fr 1fr}.projects-kpi-card{padding:12px 14px}.projects-kpi-card__value{font-size:20px}.project-card{border-radius:18px;padding:13px 16px}.project-card__row{flex-wrap:wrap;align-items:flex-start}.project-card__main{flex:100%}.project-card__actions{flex-wrap:wrap;flex:100%;justify-content:flex-start}.project-card__actionbar{justify-content:flex-start}.project-card__title{margin-bottom:2px;font-size:14.5px}.project-card__amount{font-family:var(--font-mono);font-size:14.5px;line-height:1.5}.project-card__meta{flex-wrap:wrap;row-gap:4px;width:100%}}