:root{--bg:#f5f1e8;--surface:#ffffffdb;--surface-2:#ffffffb3;--surface-3:#e7f1eaeb;--popup-surface:#fff;--muted:#e8f2ef;--glass:#ffffffc7;--glass-strong:#ffffffdb;--glass-soft:#ffffff7a;--glass-blur:blur(24px) saturate(1.35);--sidebar-glass:linear-gradient(180deg, #0c4c40eb, #0c3c33d6);--text:#10211d;--text-2:#4f625b;--text-3:#65766f;--accent:#206058;--accent-hover:#184840;--accent-soft:#e8f2ef;--accent-soft-strong:#d4e7e1;--accent-text:#185048;--link:#2563eb;--link-hover:#1d4ed8;--green:#206058;--green-soft:#e8f2ef;--amber:#d98a0b;--amber-soft:#fbf0db;--red:#d6453d;--red-soft:#fbe9e8;--blue:#307868;--blue-soft:#e8f2ef;--weekend-red:#b0332c;--weekend-red-soft:#fbe9e8;--ios-red:#ff3b30;--border:#1848401f;--border-strong:#18484033;--glass-border:#ffffff94;--shadow-sm:0 12px 34px #173f361a, 0 1px 0 #ffffffb8 inset;--shadow-md:0 18px 50px #173f361f, 0 1px 0 #ffffffc7 inset;--shadow-lg:0 24px 70px #173f3629, 0 1px 0 #ffffffd1 inset;--radius:18px;--radius-sm:12px;--radius-lg:28px;--sidebar-w:248px;--mobile-floating-ui-bottom:calc(16px + env(safe-area-inset-bottom))}*{box-sizing:border-box;margin:0;padding:0}html,body{font-feature-settings:"cv01", "ss03";color:var(--text);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;background:radial-gradient(circle at 18% 12%,#fffffff2,#0000 24%),radial-gradient(circle at 78% 6%,#2f8c7833,#0000 28%),radial-gradient(circle at 70% 88%,#d98a0b1a,#0000 25%),linear-gradient(135deg,#f8f5ed 0%,#e9f3ee 48%,#f2efe6 100%);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:15px}.app.role-zebbe{--accent:#b0188f;--accent-hover:#8b126f;--accent-soft:#fff0fb;--accent-soft-strong:#ffd6f5;--accent-text:#7a105f;--green:#b0188f;--green-soft:#fff0fb;--sidebar-glass:linear-gradient(180deg, #b0188ff0, #732982e6);--zebbe-pride-gradient:linear-gradient(90deg, #e40303, #ff8c00, #ffed00, #008026, #24408e, #732982)}.app.role-zebbe .brand-mark,.app.role-zebbe .btn-primary,.app.role-zebbe .mobile-menu-button,.app.role-zebbe .segment button.on-accent,.app.role-zebbe .combo-check.on,.app.role-zebbe .material-qty-button.primary,.app.role-zebbe .mobile-month-day.today i,.app.role-zebbe .mobile-month-day.selected,.app.role-zebbe .ios-month-day.selected,.app.role-zebbe .ios-week-strip button.selected strong,.app.role-zebbe .job-color.a-indigo,.app.role-zebbe .badge-green,.app.role-zebbe .badge-pride{background:var(--zebbe-pride-gradient);color:#fff;text-shadow:0 1px 2px #00000038;border-color:#0000}.app.role-zebbe .nav-item.active,.app.role-zebbe .mobile-menu-item.active,.app.role-zebbe .tab.active{border-color:#0000;box-shadow:inset 4px 0 #e40303,inset 8px 0 #ff8c00,inset 12px 0 #ffed00,inset 16px 0 #008026,inset 20px 0 #24408e,inset 24px 0 #732982}.app.role-zebbe .avatar.indigo,.app.role-zebbe .dot-green,.app.role-zebbe .generated-bubble-icon,.app.role-zebbe .mobile-assignment.a-indigo .mobile-assignment-bar{background:var(--zebbe-pride-gradient);color:#fff;text-shadow:0 1px 2px #00000038}.app.role-zebbe .delta.up,.app.role-zebbe .mobile-month-day.today,.app.role-zebbe .cal-head .day.today .num,.app.role-zebbe .ios-month-day.today,.app.role-zebbe .ios-month-day.selected i{color:var(--accent-text)}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--sidebar-glass);-webkit-backdrop-filter:var(--glass-blur);color:#fff;z-index:40;border-right:1px solid #ffffff3d;flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:24px 0 78px #123f3647,inset -1px 0 #ffffff24}.sidebar-brand{align-items:center;gap:10px;padding:18px 18px 14px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), #387868);color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:15px;font-weight:700;display:grid}.brand-logo{object-fit:cover;background:#ffffff29;border-radius:14px;width:40px;height:40px;display:block;box-shadow:0 14px 36px #0000002e}.brand-name{letter-spacing:-.2px;color:#fff;font-size:16px;font-weight:750}.brand-sub{color:#ffffffbd;margin-top:-2px;font-size:11px}.nav{flex-direction:column;flex:1;gap:2px;padding:6px 10px;display:flex}.nav-label{text-transform:uppercase;letter-spacing:.5px;color:#ffffffbd;padding:14px 10px 6px;font-size:12px;font-weight:700}.nav-item{border-radius:var(--radius-sm);color:#ffffffe0;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:650;transition:background .12s,color .12s,box-shadow .12s;display:flex}.nav-item:hover{color:#fff;background:#ffffff1f}.nav-item.active{color:#fff;background:linear-gradient(135deg,#ffffff47,#ffffff29);box-shadow:0 14px 38px #0000002e,inset 0 1px #ffffff47,inset 4px 0 #6ccdb2d9}.nav-item .ico{opacity:.9;flex-shrink:0;width:18px;height:18px}.sidebar-foot{border-top:1px solid #ffffff29;padding:12px}.user-chip{border-radius:var(--radius-sm);color:#fff;align-items:center;gap:10px;padding:6px;display:flex}.user-chip:hover{background:#ffffff1f}.avatar{background:var(--surface-3);width:30px;height:30px;color:var(--text-2);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;line-height:1;display:grid}.avatar.sm{width:24px;height:24px;font-size:10px}.avatar.indigo{background:var(--accent-soft);color:var(--accent-text)}.person-inline{align-items:center;gap:10px;min-width:0;display:flex}.person-inline .avatar{flex-shrink:0;line-height:1}.person-copy{min-width:0;line-height:1.2}.person-copy>*{min-width:0}.main{margin-left:var(--sidebar-w);flex:1;min-width:0}.topbar{height:64px;-webkit-backdrop-filter:var(--glass-blur);z-index:30;background:#f8faf785;border-bottom:1px solid #ffffff9e;justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.3px;font-size:17px;font-weight:600}.topbar .crumb{color:var(--text-3);font-weight:510}.content{width:100%;max-width:none;padding:28px clamp(28px,3vw,56px)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar{background:#0c4c40}.topbar,.card,.stat,.cal,.search,.pwa-update-banner{background:#ffffffeb}}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--glass-strong);height:38px;color:var(--text);justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:14px;font-weight:650;transition:background .12s,border-color .12s,color .12s,box-shadow .12s,transform .12s;display:inline-flex;box-shadow:inset 0 1px #ffffffad}.btn:not(.btn-primary):not(.btn-ghost){background:#ffffffb8;border-color:#1848402e}.btn:not(.btn-primary):not(.btn-ghost):hover{background:var(--accent-soft);color:var(--accent-text);border-color:#20605847}.btn:hover{background:var(--surface-2)}.btn-primary{color:#fff;background:linear-gradient(#2d7469,#1e5b52);border-color:#0000;box-shadow:0 16px 34px #20605838,inset 0 1px #ffffff47}.btn-primary:hover{background:linear-gradient(180deg, #2a6d63, var(--accent-hover));box-shadow:0 18px 42px #20605847,inset 0 1px #ffffff47}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--muted);color:var(--accent-text)}.btn-sm{height:30px;padding:0 10px;font-size:13px}.btn-lg{height:44px;padding:0 20px;font-size:15px}.btn-block{width:100%}.btn-danger{color:var(--red)}.btn:focus-visible,.tab:focus-visible,.profile-trigger:focus-visible,.profile-menu-item:focus-visible,.search-clear:focus-visible,.global-search-scope-toggle:focus-visible,.search-result:focus-visible,.mobile-menu-button:focus-visible,.mobile-menu-backdrop:focus-visible,.mobile-menu-item:focus-visible,.mobile-menu-subitem:focus-visible,.combo-trigger:focus-visible,.combo-option:focus-visible,.combo-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px)saturate(1.12)}.card-pad{padding:20px}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.card-head h3{font-size:15px;font-weight:600}.detail-list{gap:0;margin-top:18px;display:grid}.detail-list>div{border-top:1px solid var(--border);gap:3px;padding:12px 0;display:grid}.detail-list>div:first-child{border-top:0;padding-top:0}.detail-list strong{color:var(--text-2);font-size:12px}.detail-list span{overflow-wrap:anywhere;font-size:14px;font-weight:620}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;display:grid}.stat{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px)saturate(1.12);padding:18px}.stat .label{color:var(--text-2);font-size:13px;font-weight:760}.stat .value{letter-spacing:-.8px;margin-top:6px;font-size:30px;font-weight:850}.stat .delta{margin-top:4px;font-size:12px;font-weight:560}.delta.up{color:var(--green)}.delta.down{color:var(--red)}.inspections-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}.inspections-stat{min-width:0}.inspections-stat .label,.inspections-stat .delta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inspections-stat .value{line-height:1}.inspections-overview-card .section-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.inspections-overview-card .section-head h2{margin:0 0 4px;font-size:16px;line-height:1.3}.inspections-overview-card .section-head p{color:var(--text-2);margin:0;font-size:13px;line-height:1.45}.inspections-overview-card .job-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.inspections-overview-card .job-row:first-of-type{border-top:0}.inspections-overview-card .job-row>div{gap:4px;min-width:0;display:grid}.inspections-overview-card .job-row strong{overflow-wrap:anywhere;line-height:1.35}.inspections-overview-card .job-row small{color:var(--text-2);line-height:1.45}.inspection-form-shell,.inspection-form-actions{max-width:720px}.inspections-section-toolbar .btn{flex-shrink:0}.inspections-top-actions{flex-wrap:wrap}.inspection-protocol-hero{align-items:flex-start}.inspection-protocol-note{color:var(--text-2);overflow-wrap:anywhere;margin-top:10px;font-size:13.5px;line-height:1.45}.checklist-builder{max-width:860px}.checklist-builder-main-head{margin-bottom:12px}.builder-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.builder-head p{color:var(--text-3);margin:4px 0 0;font-size:12.5px}.builder-list,.question-builder-list{gap:10px;display:grid}.section-builder-list,.section-question-list{gap:12px;display:grid}.section-builder-card{background:linear-gradient(#fff,#f8fcfaf5);border-color:#14532d2e}.section-builder-title-row{grid-template-columns:34px minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:14px;display:grid}.section-builder-title-field{margin-bottom:0}.builder-row{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.builder-index{background:var(--bg-2);width:28px;height:28px;color:var(--text-2);border-radius:999px;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.question-builder-card{border:1px solid var(--border);background:linear-gradient(#ffffffe0,#fafcffe6);border-radius:18px;padding:14px}.section-question-card{background:#fff;border-color:#0f172a1a}.question-builder-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.builder-checks{flex-wrap:wrap;gap:12px;padding-top:2px;display:flex}.empty-section-questions{border:1px dashed var(--border);color:var(--text-3);background:#ffffffa6;border-radius:14px;padding:14px;font-size:13px}.section-add-question{justify-self:start;margin-top:12px}.inspection-action-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.inspection-action-bar .list-search{flex:1;margin:0}.inspection-answer-sections{gap:14px;display:grid}.inspection-answer-section h2{margin:0 0 12px;font-size:18px}.inspection-answer-card.missing{border-color:#dc26268c;box-shadow:0 0 0 1px #dc262629}.inspection-answer-text,.inspection-answer-note{resize:vertical}.inspection-answer-note{margin-top:8px}.inspection-photo-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;margin-top:10px;padding:10px}.inspection-photo-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.inspection-photo-head strong{font-size:13px}.inspection-photo-head span{color:var(--text-3);font-size:12px;font-weight:700}.inspection-photo-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;margin-bottom:9px;display:grid}.inspection-photo-thumb{border:1px solid var(--border);background:#fff;border-radius:12px;margin:0;overflow:hidden}.inspection-photo-thumb img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.inspection-photo-thumb figcaption{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;padding:6px 7px 0;font-size:11.5px;font-weight:700;overflow:hidden}.inspection-photo-actions{gap:6px;padding:6px 5px 7px;display:grid}.inspection-photo-actions input{min-height:32px;font-size:13px}.inspection-photo-actions button{border-radius:9px;width:100%;min-height:28px;font-size:12px;font-weight:800}.inspection-photo-rename-button{border:1px solid var(--border);color:var(--text);background:#fff}.inspection-photo-delete-button{background:var(--red-soft);color:var(--red);border:1px solid #d6453d38}.inspection-photo-pending{border:1px solid var(--border);background:#fff;border-radius:12px;gap:8px;max-width:360px;margin-bottom:9px;padding:8px;display:grid}.inspection-photo-pending img{object-fit:cover;border-radius:10px;width:100%;max-height:180px}.inspection-photo-pending label{color:var(--text-2);gap:5px;font-size:12px;font-weight:800;display:grid}.inspection-photo-upload{position:relative;overflow:hidden}.inspection-photo-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}@media (max-width:760px){.inspection-action-bar{flex-direction:column;align-items:stretch}.inspection-action-bar .row{justify-content:stretch}.inspection-action-bar .btn{flex:1}}@media (max-width:720px){.builder-head{flex-direction:column}.builder-row{grid-template-columns:28px minmax(0,1fr)}.section-builder-title-row{grid-template-columns:28px minmax(0,1fr);align-items:center}.builder-row .btn,.section-builder-title-row .btn{grid-column:2;justify-self:start}}.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--text-2);border-bottom:1px solid var(--border);padding:10px 20px;font-size:12px;font-weight:800}.table td{border-bottom:1px solid var(--border);padding:13px 20px;font-size:14px}.table tr:last-child td{border-bottom:none}.table tbody tr{transition:background .1s}.table tbody tr:hover{cursor:pointer;background:#ffffff7a}.cell-strong{font-weight:560}.cell-sub{color:var(--text-3);font-size:12.5px}.badge{border-radius:999px;align-items:center;gap:5px;height:22px;padding:0 9px;font-size:12px;font-weight:560;display:inline-flex}.badge .dot{border-radius:50%;width:6px;height:6px}.badge-green{background:var(--green-soft);color:#137a40}.badge-amber{background:var(--amber-soft);color:#9c6307}.badge-blue{background:var(--blue-soft);color:var(--accent-text)}.badge-gray{background:var(--surface-3);color:var(--text-2)}.badge-accent,.badge-brf,.badge-indigo{background:var(--accent-soft);color:var(--accent-text)}.badge-pride{color:#fff;text-shadow:0 1px 2px #0000003d;background:linear-gradient(90deg,#e40303,#ff8c00,#ffed00,#008026,#24408e,#732982)}.badge-red{background:var(--red-soft);color:#b0332c}.dot-green{background:var(--green)}.dot-amber{background:var(--amber)}.dot-blue{background:var(--blue)}.dot-gray{background:var(--text-3)}.role-select{min-width:150px;height:34px;padding-block:0}.field{margin-bottom:16px}.field label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:560;display:block}.field .hint{color:var(--text-3);margin-top:5px;font-size:12px}.input,.select,.textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:40px;color:var(--text);padding:0 12px;transition:border .12s,box-shadow .12s}.textarea{resize:vertical;height:auto;min-height:90px;padding:10px 12px;line-height:1.55}.password-field{position:relative}.password-field .input{padding-right:48px}.password-eye{width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:17px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-eye:hover,.password-eye[aria-pressed=true]{background:var(--muted);color:var(--text)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.combo{width:100%;min-width:0;position:relative}.combo-trigger{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:40px;color:var(--text);text-align:left;justify-content:space-between;align-items:center;gap:10px;padding:0 11px 0 12px;transition:border .12s,box-shadow .12s,background .12s;display:flex}.combo-trigger:hover{background:var(--surface-2)}.combo-trigger.open,.combo-trigger:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.combo-placeholder{color:var(--text-3);font-weight:450}.combo-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:510;overflow:hidden}.combo-chevron{color:var(--text-3);font-size:18px;line-height:1;transition:transform .12s}.combo-trigger.open .combo-chevron{transform:rotate(180deg)}.combo-menu{z-index:80;background:var(--popup-surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.combo-search{border:1px solid var(--border-strong);border-radius:var(--radius-sm);height:40px;color:var(--text-3);background:var(--surface);align-items:center;gap:8px;margin:10px;padding:0 12px;display:flex}.combo-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.combo-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:16px}.combo-search input::placeholder{color:var(--text-3)}.combo-options{max-height:250px;padding:4px 6px 8px;overflow-y:auto}.combo-option{border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;transition:background .1s,color .1s;display:flex}.combo-option:hover,.combo-option.selected{background:var(--accent-soft);color:var(--accent-text)}.combo-option strong{font-size:14px;font-weight:560;line-height:1.25;display:block}.combo-option small{color:var(--text-3);margin-top:2px;font-size:12px;line-height:1.25;display:block}.combo-option:hover small,.combo-option.selected small{color:var(--accent-text);opacity:.75}.combo-check{border:1.5px solid var(--border-strong);background:var(--surface);color:#fff;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.combo-check.on{background:var(--accent);border-color:var(--accent)}.combo-empty{color:var(--text-3);padding:14px 12px;font-size:13px}.combo-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.combo-chip{border:1px solid var(--border);background:var(--surface-2);min-height:26px;color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;font-weight:560;display:inline-flex}.combo-chip:hover{background:var(--accent-soft);color:var(--accent-text);border-color:#20605838}.combo-chip span{color:var(--text-3);font-size:14px;line-height:1}.material-picker-field{background:#ffffffbd;border:1px solid #20605838;border-radius:16px;padding:12px}.material-picker-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.material-picker-heading label{color:var(--text);margin-bottom:3px;font-size:13px;font-weight:700;display:block}.material-picker-heading p{color:var(--text-3);margin:0;font-size:12.5px;line-height:1.35}.material-picker-heading>span{background:var(--accent-soft);color:var(--accent-text);border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:12px;font-weight:700}.selected-materials-field{margin-top:16px}.material-quantity-list{gap:10px;display:grid}.material-quantity-row{background:#ffffffe6;border:1px solid #2060582e;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;display:grid;box-shadow:0 10px 24px #3e4a8214}.material-quantity-info{min-width:0}.material-quantity-info strong{color:var(--text);text-overflow:ellipsis;font-size:13.5px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.material-quantity-info span{color:var(--text-3);margin-top:3px;font-size:12px;display:block}.material-quantity-controls{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;grid-template-columns:42px 60px 48px;align-items:center;gap:6px;padding:4px;display:grid}.material-qty-button{border:1px solid var(--border-strong);background:var(--surface);height:38px;color:var(--text);border-radius:11px;place-items:center;font-size:17px;font-weight:800;transition:background .12s,border .12s,transform .12s;display:grid;box-shadow:0 1px 2px #0f172a0d}.material-qty-button:hover{background:var(--accent-soft);color:var(--accent-text);border-color:#20605852}.material-qty-button:active{transform:scale(.98)}.material-qty-button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.material-qty-input{text-align:center;height:38px;padding:0 6px;font-weight:800}.material-remove-button{color:#9f1d1d;background:#fef2f2c7;border:1px solid #b91c1c38;border-radius:12px;min-height:38px;padding:0 11px;font-size:12px;font-weight:750}.material-remove-button:hover{background:#fee2e2;border-color:#b91c1c57}.field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field-row-3{grid-template-columns:1fr 1fr 1fr;gap:14px;display:grid}.segment{background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border);gap:3px;padding:3px;display:inline-flex}.segment button{height:30px;color:var(--text-2);background:0 0;border:none;border-radius:5px;padding:0 16px;font-size:13px;font-weight:560}.segment button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segment button.on-green{background:var(--green);color:#fff}.segment button.on-accent{background:var(--accent);color:#fff}.checklist{flex-direction:column;gap:8px;display:flex}.check-item{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:11px;padding:11px 13px;transition:background .12s,border-color .12s,color .12s,box-shadow .12s,transform .12s;display:flex}.check-item:hover{border-color:var(--accent);background:var(--surface-2)}.check-item.checked{border-color:var(--accent);background:var(--accent-soft)}.check-box{border:1.5px solid var(--border-strong);background:var(--surface);border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.check-item.checked .check-box{background:var(--accent);border-color:var(--accent);color:#fff}.check-item .tool-name{font-size:14px;font-weight:510}.check-item .tool-meta{color:var(--text-3);margin-left:auto;font-size:12px}.reveal{border-radius:var(--radius);background:var(--surface-2);border:1px dashed var(--border-strong);margin-top:14px;padding:16px}.reveal.accent{background:var(--accent-soft);border-style:solid;border-color:#2060584d}.page-head{border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:var(--glass-blur);background:linear-gradient(135deg,#ffffffb3,#ffffff61);justify-content:space-between;align-items:flex-start;margin-bottom:22px;padding:22px;display:flex;overflow:hidden}.page-head .sub{color:var(--text-2);margin-top:4px;font-size:14px}.page-title{letter-spacing:-.075em;font-size:clamp(28px,4vw,48px);font-weight:900;line-height:.98}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.grid-3{grid-template-columns:2fr 1fr;gap:20px;display:grid}.muted{color:var(--text-2)}.mt-0{margin-top:0}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.spacer{flex:1}.divider{background:var(--border);height:1px;margin:18px 0}.kv{grid-template-columns:130px 1fr;gap:6px 14px;display:grid}.kv dt{color:var(--text-3);font-size:13px;font-weight:510}.kv dd{font-size:14px;font-weight:510}.search{height:36px;color:var(--text-3);-webkit-backdrop-filter:blur(18px);background:#ffffff80;border:1px solid #ffffffc2;border-radius:999px;align-items:center;gap:8px;min-width:240px;padding:0 14px;font-size:13px;display:flex;box-shadow:inset 0 1px #ffffffc7,0 10px 30px #173f3612}.search input{color:var(--text);background:0 0;border:none;outline:none;flex:1}.cal{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px)saturate(1.12);overflow:hidden}.cal-head{border-bottom:1px solid var(--border);grid-template-columns:150px repeat(7,1fr);display:grid}.cal-head .corner{color:var(--text-3);text-transform:uppercase;padding:12px 14px;font-size:12px;font-weight:600}.cal-head .day{text-align:center;border-left:1px solid var(--border);padding:12px 10px}.cal-head .day .dow{text-transform:uppercase;color:var(--text-3);letter-spacing:.4px;font-size:11px;font-weight:600}.cal-head .day .num{margin-top:2px;font-size:16px;font-weight:600}.cal-head .day.today .num{color:var(--accent-text)}.cal-row{border-bottom:1px solid var(--border);grid-template-columns:150px repeat(7,1fr);min-height:64px;display:grid}.cal-row:last-child{border-bottom:none}.cal-worker{border-right:1px solid var(--border);align-items:center;gap:9px;padding:12px 14px;display:flex}.cal-worker .name{font-size:13.5px;font-weight:560}.cal-worker .role{color:var(--text-3);font-size:11px}.cal-cell{border-left:1px solid var(--border);flex-direction:column;gap:4px;padding:6px;display:flex}.cal-cell:first-child{border-left:none}.assign{cursor:pointer;border-left:3px solid;border-radius:6px;padding:6px 8px;font-size:11.5px;font-weight:560;line-height:1.3}.assign .t{font-weight:600}.assign .c{opacity:.8;font-size:10.5px}.a-indigo{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}.a-green{background:var(--green-soft);color:#137a40;border-color:var(--green)}.a-amber{background:var(--amber-soft);color:#9c6307;border-color:var(--amber)}.a-blue{background:var(--blue-soft);color:var(--accent-text);border-color:var(--blue)}.auth-wrap{background:0 0;place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{width:100%;max-width:400px}.auth-card .brand-mark{border-radius:11px;width:40px;height:40px;margin:0 auto 18px;font-size:20px}.auth-card .brand-logo{object-fit:cover;background:0 0;display:block}.auth-card h2{text-align:center;letter-spacing:-.4px;font-size:21px;font-weight:680}.auth-card .sub{text-align:center;color:var(--text-2);margin:6px 0 24px;font-size:14px}.auth-foot{text-align:center;color:var(--text-2);margin-top:18px;font-size:13px}.auth-foot a{color:var(--link);font-weight:650}.auth-foot a:hover{color:var(--link-hover);text-decoration:underline}.recover-link{min-height:32px;color:var(--link);white-space:nowrap;background:#eff6ff;border:1px solid #2563eb3d;border-radius:999px;align-items:center;padding:0 11px;font-size:13px;font-weight:760;display:inline-flex}.recover-link:hover{background:var(--link);color:#fff}.empty{text-align:center;color:var(--text-3);padding:40px}.list-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:none}.tag-pill{background:var(--surface-3);color:var(--text-2);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:560}.tab-bar{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex}.tab{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:9px 14px;font-family:inherit;font-size:14px;font-weight:560;display:inline-flex}.tab.active{color:var(--accent-text);border-color:var(--accent)}.tab:hover{color:var(--text)}.nav-assignment-badge{min-width:20px;height:20px;color:var(--accent-text);border:1px solid color-mix(in srgb, var(--accent) 24%, #0000002e);background:#fff;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-size:11px;font-weight:850;line-height:1;display:inline-flex;box-shadow:0 1px 3px #00000029}.tab-assignment-badge{min-width:20px;height:20px;color:var(--accent-text);border:1px solid color-mix(in srgb, var(--accent) 24%, #0000002e);background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:850;line-height:1;display:inline-flex;box-shadow:0 1px 3px #00000029}.mobile-menu-wrap,.mobile-menu-overlay{display:none}@media (max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3{grid-template-columns:1fr}.sidebar{transition:transform .2s;transform:translate(-100%)}.main{margin-left:0}.topbar .search{display:none}.mobile-menu-wrap{z-index:280;display:block;position:relative}.mobile-menu-overlay{z-index:1000;pointer-events:auto;touch-action:none;overscroll-behavior:contain;display:block;position:fixed;inset:0}.mobile-menu-button{background:var(--accent-soft-strong);width:40px;height:40px;color:var(--accent-text);border:1px solid #20605847;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:inline-flex;box-shadow:0 8px 18px #20605824}.mobile-menu-button span{background:currentColor;border-radius:999px;width:17px;height:2px}.mobile-menu-backdrop{z-index:250;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);pointer-events:auto;touch-action:none;background:#1216235c;border:0;position:fixed;inset:0}.mobile-menu-overlay.shielding .mobile-menu-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.mobile-menu-panel{z-index:280;border-left:1px solid var(--border-strong);color:#fff;width:min(75vw,320px);min-height:100dvh;max-height:100dvh;padding:calc(12px + env(safe-area-inset-top)) 10px calc(12px + env(safe-area-inset-bottom));background:#0c4c40;border-radius:18px 0 0 18px;position:fixed;top:0;bottom:0;right:0;overflow:auto;box-shadow:-18px 0 38px #0c101c42}.mobile-menu-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:4px 4px 12px;display:flex}.mobile-menu-head strong,.mobile-menu-head span,.mobile-menu-account strong,.mobile-menu-account span{display:block}.mobile-menu-head strong{font-size:16px}.mobile-menu-head span,.mobile-menu-account span{color:var(--text-3);overflow-wrap:anywhere;margin-top:2px;font-size:12.5px}.mobile-menu-head strong,.mobile-menu-account strong{overflow-wrap:anywhere}.mobile-menu-list{gap:4px;padding:8px 0;display:grid}.mobile-menu-item{min-height:44px;color:var(--text-2);border-radius:12px;align-items:center;gap:10px;padding:0 10px;font-size:14px;font-weight:650;display:flex}.mobile-menu-item .ico{flex-shrink:0;width:18px;height:18px}.mobile-menu-item.active{background:var(--accent-soft-strong);color:var(--accent-text);box-shadow:inset 3px 0 0 var(--accent)}.mobile-menu-account{border-top:1px solid var(--border);gap:10px;padding:12px 4px 2px;display:grid}.mobile-menu-sublist{gap:5px;margin:-2px 0 8px 24px;display:grid}.mobile-menu-subitem{color:var(--text-2);overflow-wrap:anywhere;border-radius:11px;padding:8px 10px;font-size:13px;font-weight:650;text-decoration:none;display:block}.mobile-menu-subitem.active,.mobile-menu-subitem:hover{background:var(--accent-soft);color:var(--accent-text)}}.mobile-schedule{display:none}.desktop-calendar{display:block}@media (max-width:760px){:root{--radius:14px;--radius-sm:10px;--radius-lg:18px}html,body{background:var(--surface-2);width:100%;max-width:100%;font-size:16px;overflow-x:hidden}body{overflow-x:hidden}.app{min-height:100dvh;display:block}.sidebar{display:none}.main{width:100%;margin-left:0}.topbar{height:auto;min-height:52px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;-webkit-backdrop-filter:var(--glass-blur);background:#f8faf7b8;align-items:center;gap:8px}.topbar h1{text-overflow:ellipsis;min-width:0;padding-top:0;font-size:16.5px;line-height:1.2;overflow:hidden}.topbar .row{flex-shrink:0;order:2;gap:6px;margin-left:auto}.topbar .mobile-menu-wrap{margin-left:auto}.topbar .search{display:none}.topbar .btn-sm{border-radius:12px;min-width:40px;height:40px;padding:0 12px}.inspections-top-actions{display:none}.content{padding:14px 12px calc(20px + env(safe-area-inset-bottom));max-width:none}.page-head{margin-bottom:16px;display:block}.page-title{letter-spacing:-.55px;font-size:23px;line-height:1.14}.page-head .sub{margin-top:4px;font-size:13.5px}.page-head>.row{margin-top:12px;padding-bottom:2px;overflow-x:auto}.btn{border-radius:12px;min-height:44px}.btn-sm{height:40px;min-height:40px;font-size:14px}.btn-lg{width:100%;height:48px;min-height:48px}.row{flex-wrap:wrap}.card{box-shadow:none;border-radius:14px}.card-pad{padding:14px}.card-head{padding:12px 14px}.card-head .btn{min-height:36px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.stat{border-radius:14px;padding:12px}.stat .value{font-size:22px}.grid-2,.grid-3,.field-row,.field-row-3{grid-template-columns:1fr;gap:0}.material-picker-heading{flex-direction:column;gap:8px}.material-picker-heading>span{align-self:flex-start}.material-quantity-row{grid-template-columns:1fr;gap:11px}.material-quantity-info strong{white-space:normal}.material-quantity-controls{grid-template-columns:48px minmax(70px,1fr) 58px;width:100%}.material-qty-button,.material-qty-input{height:42px}.material-remove-button{width:100%}.field{margin-bottom:15px}.field label{margin-bottom:7px;font-size:14px}.input,.select,.textarea,.combo-trigger{background:#fff;border-radius:12px;height:46px;min-height:46px;font-size:16px}input,select,textarea,.combo-search input,.search input{font-size:16px}.textarea{min-height:112px;padding-top:12px}.combo-menu{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));width:auto;max-width:calc(100vw - 24px);top:auto;bottom:var(--mobile-floating-ui-bottom);border-radius:18px;max-height:min(68dvh,560px);position:fixed}.combo-search{border-radius:13px;min-width:0;height:48px}.combo-options{max-height:min(52dvh,420px);padding-bottom:12px}.combo-option{border-radius:12px;min-height:48px;padding:9px 11px}.combo-option strong{font-size:15px}.combo-option small{font-size:12.5px}.combo-chip{min-height:30px;padding:4px 10px}.material-picker-field .combo-menu,.time-project-picker-field .combo-menu,.inline-mobile-tool-picker .combo-menu{width:100%;max-width:none;margin-top:10px;position:static;box-shadow:0 10px 24px #3e4a821a}.material-picker-field .combo-options,.time-project-picker-field .combo-options,.inline-mobile-tool-picker .combo-options{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(46dvh,360px);overflow-y:auto}.segment{border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;width:100%;padding:4px;display:grid}.segment button{border-radius:10px;height:40px;padding:0 10px;font-size:14px}.tab-bar{scrollbar-width:none;border-bottom:0;gap:6px;margin:0 -14px 14px;padding:0 14px 2px;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:999px;flex:none;justify-content:center;align-items:center;height:auto;min-height:38px;margin-bottom:0;padding:9px 14px;display:inline-flex}.tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.card:has(.table){box-shadow:none;background:0 0;border:0}.table,.table thead,.table tbody,.table tr,.table th,.table td{width:100%;display:block}.table thead{display:none}.table tbody{gap:10px;display:grid}.table tr{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;padding:12px 14px}.table tr:hover{background:var(--surface)}.table td{border:0;padding:5px 0;font-size:14px}.table td:first-child{padding-top:0}.table td:last-child{padding-bottom:0}.table td:not(:first-child):not(:last-child){border-top:1px solid var(--border);justify-content:space-between;gap:12px;margin-top:4px;padding-top:8px;display:flex}.table td[data-label]:before{content:attr(data-label);color:var(--text-3);text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:620}.table td:first-child .cell-strong{font-size:16px}.table td:last-child:has(svg){display:none}.list-row{min-height:58px;padding:10px 0}.badge{min-height:24px}.tag-pill{margin-top:4px;display:inline-block}.kv{grid-template-columns:1fr;gap:2px}.cal{-webkit-overflow-scrolling:touch;border-radius:16px;overflow-x:auto}.cal-head,.cal-row{min-width:820px}.cal-worker{background:var(--surface);z-index:2;position:sticky;left:0}.reveal{border-radius:16px;padding:14px}.desktop-calendar{display:none}.mobile-schedule{display:block}.schedule-controls{width:100%}.schedule-controls .segment{flex:100%}.schedule-legend{display:none}.mobile-week-strip{scrollbar-width:none;grid-auto-columns:minmax(58px,1fr);grid-auto-flow:column;gap:8px;margin:0 -14px 16px;padding:0 14px 4px;display:grid;overflow-x:auto}.mobile-week-strip::-webkit-scrollbar{display:none}.mobile-day{border:1px solid var(--border);background:var(--surface);min-height:68px;color:var(--text-2);box-shadow:var(--shadow-sm);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.mobile-day .dow{letter-spacing:.5px;text-transform:uppercase;color:var(--text-3);font-size:11px;font-weight:700}.mobile-day .num{color:var(--text);font-size:19px;font-weight:720;line-height:1}.mobile-day .count{background:var(--surface-2);min-width:24px;height:20px;color:var(--text-3);border-radius:999px;justify-content:center;align-items:center;margin-top:4px;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.mobile-day.today{border-color:#20605847}.mobile-day.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 10px 24px #20605838}.mobile-day.active .dow,.mobile-day.active .num{color:#fff}.mobile-day.active .count{color:#fff;background:#fff3}.mobile-agenda-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.agenda-title{letter-spacing:-.3px;font-size:18px;font-weight:700}.agenda-sub{color:var(--text-3);margin-top:1px;font-size:13px}.mobile-agenda-head .btn{flex-shrink:0}.mobile-agenda-list{gap:10px;display:grid}.mobile-assignment{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;grid-template-columns:5px 1fr;display:grid;position:relative;overflow:hidden}.mobile-assignment-bar{background:var(--blue)}.mobile-assignment.a-green .mobile-assignment-bar{background:var(--green)}.mobile-assignment.a-amber .mobile-assignment-bar{background:var(--amber)}.mobile-assignment.a-indigo .mobile-assignment-bar{background:var(--accent)}.mobile-assignment-main{min-width:0;padding:12px}.mobile-assignment-project{letter-spacing:-.2px;font-size:15px;font-weight:700;line-height:1.2}.mobile-assignment-client{color:var(--text-3);margin-top:3px;font-size:13px}.mobile-worker-row{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.mobile-worker-row .worker-name{font-size:14px;font-weight:650;line-height:1.2}.mobile-worker-row .worker-role{color:var(--text-3);font-size:12.5px}.mobile-time-pill{background:var(--surface-2);color:var(--text-2);white-space:nowrap;border-radius:999px;margin-left:auto;padding:5px 8px;font-size:12px;font-weight:650}.mobile-month-view{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;padding:14px}.mobile-month-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.mobile-month-weekdays{color:var(--text-3);text-align:center;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:6px;font-size:11px;font-weight:750;display:grid}.mobile-month-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.mobile-month-day{aspect-ratio:1;background:var(--surface-2);min-height:42px;color:var(--text-2);border:1px solid #0000;border-radius:13px;place-items:center;font-size:14px;font-weight:650;display:grid;position:relative}.mobile-month-day.has-items{background:var(--accent-soft);color:var(--accent-text);border-color:#20605829}.mobile-month-day.today{border-color:var(--accent)}.mobile-month-day.active{background:var(--accent);border-color:var(--accent);color:#fff}.mobile-month-day small{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:800;display:inline-flex;position:absolute;bottom:4px;right:4px}.mobile-month-day.active small{background:#ffffff3d}.mobile-empty-day{background:var(--surface);border:1px dashed var(--border-strong);text-align:center;border-radius:16px;padding:18px 14px}.empty-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-text);border-radius:14px;place-items:center;margin:0 auto 10px;display:grid}}@media (max-width:390px){.content,.topbar{padding-left:10px;padding-right:10px}.page-title{font-size:21.5px}.stat-grid{grid-template-columns:1fr}}.generated-bubble-list{gap:10px;display:grid}.generated-bubble-list.in-card{padding:14px}.generated-bubble{background:#ffffffb8;border:1px solid #ffffffc7;border-radius:24px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;max-width:100%;min-height:60px;padding:10px 12px;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 28px #173f3617,inset 0 1px #ffffffdb}.generated-bubble:before{content:"";background:var(--bubble-accent,var(--accent));border-radius:999px;width:4px;position:absolute;top:12px;bottom:12px;left:0}.generated-bubble:hover{transform:translateY(-1px);box-shadow:0 15px 34px #173f361f,inset 0 1px #ffffffe0}.generated-bubble[data-tone=green]{--bubble-accent:var(--green)}.generated-bubble[data-tone=amber]{--bubble-accent:var(--amber)}.generated-bubble[data-tone=blue]{--bubble-accent:var(--blue)}.generated-bubble[data-tone=pink]{--bubble-accent:#c2418d}.generated-bubble[data-tone=red]{--bubble-accent:var(--red)}.generated-bubble[class*=worker-color-]{--bubble-accent:var(--worker-color,var(--accent))}.generated-bubble-icon{color:#fff;background:var(--bubble-accent,var(--accent));border-radius:999px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:11px;font-style:normal;font-weight:900;line-height:1;display:grid;box-shadow:0 10px 24px #173f362e}.generated-bubble-main{gap:3px;min-width:0;max-width:100%;display:grid;overflow:hidden}.generated-bubble-title{align-items:center;gap:6px;min-width:0;max-width:100%;display:flex;overflow:hidden}.generated-bubble-title strong,.generated-bubble-title .badge,.generated-bubble-main>strong,.generated-bubble-main>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.generated-bubble-title strong,.generated-bubble-title .badge,.generated-bubble-main>strong{letter-spacing:-.01em;font-size:14px}.generated-bubble-title strong{min-width:0}.generated-bubble-title .badge{flex:0 auto;max-width:42%}.generated-bubble-main>small,.generated-bubble-meta{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;overflow:hidden}.generated-bubble-amount{min-width:68px;min-height:42px;color:var(--bubble-accent,var(--accent));text-align:center;white-space:nowrap;background:#ffffff9e;border:1px solid #ffffffc7;border-radius:16px;place-items:center;font-weight:900;display:grid}.generated-bubble-action{white-space:nowrap;justify-self:end;min-width:64px}@media (max-width:760px){.generated-bubble-list.in-card{padding:12px}.generated-bubble{border-radius:20px;grid-template-columns:38px minmax(0,1fr);align-items:start}.generated-bubble-amount,.generated-bubble-action{grid-column:2;justify-self:start;min-height:34px}.generated-bubble-title{flex-wrap:nowrap}.generated-bubble-title .badge{max-width:48%}}.profile-wrap{position:relative}.profile-trigger{text-align:left;background:0 0;border:0;width:100%}.profile-menu{z-index:120;background:var(--popup-surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg);position:absolute;bottom:calc(100% + 8px);left:10px;right:10px;overflow:hidden}.profile-menu-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px;display:flex}.profile-menu-item{width:100%;min-height:42px;color:var(--text);background:0 0;border:0;align-items:center;padding:0 12px;font-size:14px;font-weight:560;display:flex}.profile-menu-item:hover{background:var(--surface-2)}.profile-menu-item.danger{color:var(--red)}.form-error{border-radius:var(--radius-sm);background:var(--red-soft);color:var(--red);margin-bottom:14px;padding:10px 12px;font-size:13px;font-weight:560}.login-callout{justify-content:space-between;align-items:center;gap:16px;display:flex}.worker-day-hero{border-radius:var(--radius-lg);background:radial-gradient(circle at 95% 10%, #2060582e, transparent 30%), linear-gradient(135deg, #fff, var(--accent-soft));box-shadow:var(--shadow-sm);border:1px solid #20605829;grid-template-columns:1.4fr auto;align-items:center;gap:18px;padding:22px;display:grid}.worker-day-copy h2{letter-spacing:-.9px;margin:0;font-size:30px;line-height:1.05}.worker-day-copy p{color:var(--text-2);margin-top:8px}.worker-day-actions{gap:10px;display:flex}.worker-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:520px;display:grid}.worker-quick-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 16px}.worker-quick-card strong{margin-top:6px;font-size:26px;line-height:1;display:block}.worker-layout{grid-template-columns:minmax(320px,.9fr) minmax(0,1.4fr);gap:18px;display:grid}.section-head-row{justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.section-head-row h3{font-size:15px}.section-head-row p{color:var(--text-3);margin-top:2px;font-size:13px}.worker-job-list{gap:10px;display:grid}.worker-job-card{background:#ffffffb8;border:1px solid #ffffffc7;border-radius:24px;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px 13px 12px;display:grid;box-shadow:0 12px 28px #173f3617,inset 0 1px #ffffffdb}.job-color{background:var(--blue);border-radius:999px;width:5px;height:44px}.job-color.a-indigo{background:var(--accent)}.job-color.a-green{background:var(--green)}.job-color.a-amber{background:var(--amber)}.job-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:680;overflow:hidden}.job-meta{color:var(--text-3);margin-top:2px;font-size:12.5px}@media (max-width:760px){.profile-menu{left:12px;right:12px;bottom:var(--mobile-floating-ui-bottom);border-radius:18px;position:fixed}.login-callout{display:block}.login-callout .btn{width:100%;margin-top:14px}.worker-day-hero{padding:18px;display:block}.worker-day-copy h2{font-size:26px}.worker-day-actions{grid-template-columns:1fr;margin-top:16px;display:grid}.worker-quick-grid{grid-template-columns:1fr 1fr;max-width:none}.worker-layout{grid-template-columns:1fr;gap:14px}.section-head-row{align-items:flex-start}.worker-job-card{background:var(--surface);border-radius:16px}}.mobile-profile-wrap{display:none}.global-search{min-width:310px;transition:border-color .16s,box-shadow .16s,background-color .16s;position:relative}.global-search-scope{color:var(--accent-text);white-space:nowrap;padding:0 2px 0 0;font-size:11px;font-weight:760}.global-search-scope-toggle{border:1px solid var(--border);background:var(--surface);height:24px;color:var(--text-2);white-space:nowrap;border-radius:999px;padding:0 8px;font-size:11px;font-weight:700}.global-search-scope-toggle.active{background:var(--accent-soft);color:var(--accent-text);border-color:#2060583d}.global-search:focus-within{background:var(--surface);border-color:#2060586b;box-shadow:0 0 0 4px #2060581a}.search-clear{background:var(--surface);width:22px;height:22px;color:var(--text-3);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.search-clear:hover{background:var(--border);color:var(--text)}.search-popover{background:var(--popup-surface);border:1px solid var(--border-strong);width:min(460px,100vw - 32px);box-shadow:var(--shadow-lg);z-index:150;border-radius:16px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.search-result{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:58px;padding:8px 10px;display:grid}.search-result:hover,.search-result.active{background:var(--accent-soft)}.search-kind{background:var(--surface-2);color:var(--text-2);border-radius:999px;justify-self:start;padding:4px 8px;font-size:11px;font-weight:760}.search-kind-project{background:var(--accent-soft);color:var(--accent-text)}.search-kind-client{background:var(--green-soft);color:var(--green)}.search-kind-worker{background:var(--blue-soft);color:var(--blue)}.search-kind-tool{background:var(--amber-soft);color:var(--amber)}.search-result-main{gap:2px;min-width:0;display:grid}.search-result-main strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:690;overflow:hidden}.search-result-main small{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.search-empty{gap:4px;padding:16px;display:grid}.search-empty strong{color:var(--text);font-size:14px}.search-empty small{color:var(--text-3);font-size:12.5px}.row-focused{box-shadow:inset 4px 0 0 var(--accent);background:var(--accent-soft)!important}.row-focused td:first-child{border-top-left-radius:10px;border-bottom-left-radius:10px}.row-focused td:last-child{border-top-right-radius:10px;border-bottom-right-radius:10px}.draft-status{background:var(--accent-soft);color:var(--accent-text);border:1px solid #2060582e;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.draft-status strong{font-size:13px;font-weight:760;display:block}.draft-status span{color:var(--text-2);margin-top:2px;font-size:12.5px;display:block}@media (max-width:760px){.draft-status{flex-direction:column;align-items:stretch}.draft-status .btn{width:100%}}.resume-draft-bar{z-index:220;border:1px solid var(--border-strong);width:min(430px,100vw - 48px);min-height:52px;color:var(--text);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-radius:18px;align-items:center;gap:8px;padding:8px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.resume-draft-main{border-radius:14px;flex:1;align-items:center;gap:10px;min-width:0;padding:4px 6px;display:flex}.resume-draft-main:hover{background:var(--surface-2)}.resume-draft-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);border-radius:11px;flex:none;justify-content:center;align-items:center;display:inline-flex}.resume-draft-copy{gap:1px;min-width:0;display:grid}.resume-draft-copy strong{color:var(--text);font-size:13.5px;font-weight:700;line-height:1.1}.resume-draft-copy small{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.resume-draft-end{border:1px solid var(--border);background:var(--surface-2);height:34px;color:var(--red);border-radius:12px;flex:none;padding:0 12px;font-size:12.5px;font-weight:680}.resume-draft-end:hover{background:var(--red-soft);border-color:#cc3d3d2e}@media (max-width:760px){.resume-draft-bar{left:12px;right:12px;bottom:var(--mobile-floating-ui-bottom);border-radius:16px;width:auto;min-height:50px;padding:7px;transform:none}.resume-draft-main{gap:9px;padding:3px 4px}.resume-draft-icon{border-radius:10px;width:30px;height:30px}.resume-draft-copy strong{font-size:13px}.resume-draft-copy small{font-size:11.5px}.resume-draft-end{height:32px;padding:0 10px;font-size:12px}}.inspections-primary-tabs .tab,.inspections-list-tabs .tab{text-align:center;justify-content:center;align-items:center;line-height:1.15;display:inline-flex}.inspections-overview-card .section-head .btn,.job-row .btn{text-align:center;white-space:normal}.project-scoped-client-card,.card-subsection{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;margin-bottom:14px;padding:12px}.project-scoped-client-card strong{margin-top:3px;display:block}.project-scoped-client-card p{color:var(--text-3);margin:4px 0 0;font-size:13px;line-height:1.35}.section-head-row.compact{margin-bottom:10px}.object-owner-card{gap:10px;display:grid}.object-owner-segment{max-width:420px}.object-owner-fields{align-items:end}.project-start-date-field,.project-start-date-field .input{min-width:0}.inspection-project-action{border-radius:999px;padding-inline:14px}.inspection-project-protocols .table td,.inspection-project-protocols .table th{vertical-align:middle}.inspection-report-picker{max-width:560px}.inspection-report-protocol-list{gap:10px;max-height:min(420px,54dvh);margin:14px 0;padding-right:2px;display:grid;overflow:auto}.inspection-report-protocol-choice{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;padding:12px;display:grid}.inspection-report-protocol-choice input{margin-top:3px}.inspection-report-protocol-choice span{gap:3px;min-width:0;display:grid}.inspection-report-protocol-choice strong{overflow-wrap:anywhere}.inspection-report-protocol-choice small{color:var(--text-3);overflow-wrap:anywhere}.clickable-row{cursor:pointer}.row-link{color:inherit;display:block}.row-link:hover{color:var(--accent-text)}.project-detail-top-actions{gap:8px}.project-detail-mobile-safe-header{margin-bottom:16px}.project-detail-mobile-actions{display:none}.project-detail-hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:18px;padding:22px;display:grid}.project-detail-kpis{grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;display:grid}.mini-stat{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;min-width:120px;padding:12px}.mini-stat span{color:var(--text-3);font-size:12px;font-weight:620;display:block}.mini-stat strong{letter-spacing:-.4px;margin-top:4px;font-size:20px;display:block}.project-detail-grid{grid-template-columns:minmax(260px,.72fr) minmax(320px,1fr)}.section-title{margin-bottom:12px;font-size:15px}.project-time-report-controls{grid-template-columns:minmax(240px,1fr) auto;align-items:center;gap:12px;padding:0 18px 14px;display:grid}.project-time-report-row{cursor:pointer;transition:background .14s,box-shadow .14s}.project-time-report-row:hover,.project-time-report-row:focus-visible,.project-time-report-row.selected{background:color-mix(in srgb, var(--accent) 6%, transparent);box-shadow:inset 3px 0 0 var(--accent);outline:none}.project-time-report-edit-row td{background:color-mix(in srgb, var(--accent) 3%, var(--surface));padding:0 18px 18px}.project-time-report-edit-panel{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));background:var(--surface);box-shadow:var(--shadow-sm);border-radius:16px;gap:14px;padding:16px;display:grid}.project-time-report-tool-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.project-time-report-tool-row .time-correction-option{min-height:54px}.project-time-report-tool-quantity{width:max-content}.table tbody tr.project-time-report-edit-row:hover{cursor:default;background:color-mix(in srgb, var(--accent) 3%, var(--surface))}.project-time-report-edit-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.kv-list{gap:12px;display:grid}.kv-list div{gap:3px;display:grid}.kv-list dt{color:var(--text-3);font-size:12px;font-weight:690}.kv-list dd{font-size:14px;font-weight:560}.worker-hour-list{gap:9px;display:grid}.worker-hour-row{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.worker-hour-row strong{font-size:15px}.project-usage-grid{align-items:flex-start}.project-usage-list{gap:10px;display:grid}.project-usage-list.compact{gap:8px}.project-usage-item,.project-tool-usage-row{border:1px solid var(--border);background:var(--surface-2);border-radius:14px}.project-usage-item{gap:8px;padding:12px;display:grid}.project-usage-item p{color:var(--text);white-space:pre-wrap;margin:0;font-size:13.5px;line-height:1.45}.project-usage-item small,.project-tool-usage-row small{color:var(--text-3);font-size:12px;line-height:1.3}.project-tool-usage-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.project-tool-usage-row strong,.project-tool-usage-row small{overflow-wrap:anywhere;display:block}@media (max-width:760px){.project-detail-top-actions{display:none}.project-detail-mobile-safe-header{gap:12px;margin-bottom:16px;display:grid}.project-detail-mobile-safe-header>.btn{justify-self:start}.project-detail-mobile-actions{grid-template-columns:1fr;gap:8px;width:100%;display:grid}.project-detail-mobile-actions .btn{width:100%}.project-detail-hero{grid-template-columns:minmax(0,1fr);padding:18px;overflow:hidden}.project-detail-hero>div,.project-detail-grid>*,.kv-list dd,.worker-hour-row>div{min-width:0}.project-detail-hero .sub,.kv-list dd,.worker-name,.worker-role,.table td{overflow-wrap:anywhere}.project-detail-kpis{grid-template-columns:1fr}.mini-stat{min-width:0}.project-detail-grid{grid-template-columns:minmax(0,1fr)}.project-date-row{grid-template-columns:minmax(0,1fr);gap:0}.project-time-report-controls{grid-template-columns:minmax(0,1fr);padding:0 14px 12px}.table .project-time-report-row.selected{box-shadow:inset 3px 0 0 var(--accent);border-bottom-color:#0000;border-radius:16px 16px 0 0}.table .project-time-report-edit-row{border-top:0;border-radius:0 0 16px 16px;margin-top:-10px;padding:0 12px 12px}.table .project-time-report-edit-row td{padding:0}.project-time-report-edit-panel{box-shadow:none;border-radius:0 0 14px 14px;padding:14px}.project-time-report-tool-row{grid-template-columns:1fr}.project-time-report-tool-quantity{width:100%}.project-time-report-edit-actions{grid-template-columns:1fr;display:grid}.project-start-date-field .input{width:100%;max-width:100%}.object-owner-segment{max-width:none}.object-owner-fields{grid-template-columns:minmax(0,1fr);gap:0}.inspection-project-action{width:100%}}.tool-detail-layout{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);align-items:flex-start;gap:18px;display:grid}.tool-status-card{background:var(--surface-2);border:1px solid var(--border);border-radius:16px;padding:16px}@media (max-width:760px){.tool-detail-layout{grid-template-columns:1fr}}.booking-conflict-warning{background:var(--red-soft);color:var(--red);border:1px solid #cc3d3d38;border-radius:13px;margin:0 0 12px;padding:11px 12px;font-size:13px;line-height:1.4}.booking-conflict-warning strong{font-weight:760}.client-detail-grid{grid-template-columns:minmax(320px,1fr) minmax(360px,.95fr)}.tab-bar.compact{margin-bottom:14px}.comm-form{gap:10px;margin:12px 0 16px;display:grid}.comm-save-message{background:var(--green-soft);color:var(--green);border:1px solid #34a85333;border-radius:13px;margin:10px 0 12px;padding:10px 12px;font-size:13px;font-weight:620}.comm-history{gap:10px;display:grid}.comm-history-item{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;padding:12px}.comm-history-item strong{text-transform:capitalize;font-size:13px}.comm-history-item p{color:var(--text);margin:8px 0;font-size:13.5px;line-height:1.45}.text-link{color:var(--link);font-weight:650}.text-link:hover{text-decoration:underline}@media (max-width:900px){.client-detail-grid{grid-template-columns:1fr}}.call-edit-box{background:var(--surface);border:1px solid var(--border);border-radius:13px;gap:8px;margin:10px 0;padding:10px;display:grid}.call-edit-box .field{margin-bottom:0}.call-edit-box .textarea{min-height:84px}.ata-grid{align-items:flex-start}.ata-send-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.ata-send-box strong,.ata-send-box span{display:block}.ata-send-box span{color:var(--text-3);margin-top:2px;font-size:12px}.ata-preview-subject{background:var(--surface-2);border-radius:var(--radius-sm);margin-bottom:10px;padding:10px 12px;font-weight:650}.ata-preview{white-space:pre-wrap;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:14px;font-family:inherit;font-size:13px;line-height:1.55}.inline-head{border-bottom:0;padding:0 0 12px}.ata-log-list{gap:8px;display:grid}.ata-log-row{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.ata-log-row strong,.ata-log-row span{display:block}.ata-log-row span{color:var(--text-3);margin-top:2px;font-size:12px}.list-search{border:1px solid var(--border);background:var(--surface);min-height:44px;box-shadow:var(--shadow-sm);color:var(--text-3);border-radius:14px;align-items:center;gap:9px;margin:0 0 14px;padding:0 12px;display:none}.list-search input{min-width:0;height:42px;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:14px}.list-search input::placeholder{color:var(--text-3)}.list-search button{background:var(--surface-3);color:var(--text-2);cursor:pointer;border:0;border-radius:999px;height:28px;padding:0 10px;font-size:12px;font-weight:650}@media (max-width:760px){.list-search{min-height:48px;box-shadow:none;border-radius:15px;margin-bottom:12px;display:flex}.list-search input{height:46px;font-size:16px}}.project-completion-cell{text-align:center;vertical-align:middle;width:76px}.project-completion-switch{appearance:none;background:var(--surface-3);border:1px solid #1848403d;border-radius:999px;width:38px;height:22px;transition:background .15s,border-color .15s;position:relative}.project-completion-switch>span{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #12211d3d}.project-completion-switch.is-completed{background:var(--accent);border-color:var(--accent)}.project-completion-switch.is-completed>span{transform:translate(16px)}.project-completion-switch:disabled{cursor:wait;opacity:.58}@media (max-width:760px){.project-table-card{margin-left:-2px;margin-right:-2px}.project-table tbody{gap:9px}.project-table tr{padding:13px 14px 12px;position:relative}.project-table td[data-label=Projektnr]{width:auto;padding:0;display:inline-flex}.project-table td[data-label=Projektnr]:before,.project-table td[data-label=Projekt]:before,.project-table td[data-label=Timmar]:before{display:none}.project-table td[data-label=Projektnr] .row-link{background:var(--accent-soft);width:auto;min-height:24px;color:var(--accent-text);letter-spacing:.2px;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:720;display:inline-flex}.project-table td[data-label=Projekt]{padding-right:58px;border-top:0!important;margin-top:8px!important;padding-top:0!important;display:block!important}.project-table td[data-label=Projekt] .row-link{font-size:15.5px;font-weight:690;line-height:1.25}.project-table td[data-label=Projekt] .cell-sub{margin-top:3px;line-height:1.25}.project-table td[data-label=Timmar]{border:1px solid var(--border);background:var(--surface-2);width:auto;color:var(--text-2);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12.5px;line-height:20px;position:absolute;top:13px;right:14px}.project-table td[data-label=Kund],.project-table td[data-label=Status]{align-items:center}.project-table td[data-label=Startdatum]:empty{display:none}}.nav-submenu{gap:4px;margin:-2px 0 6px 42px;display:grid}.nav-subitem{min-height:30px;color:var(--text-3);border-radius:10px;align-items:center;padding:0 10px;font-size:12.5px;font-weight:620;display:flex}.nav-subitem:hover{background:var(--surface-2);color:var(--text)}.nav-subitem.active{background:var(--accent-soft);color:var(--accent-text)}.invoice-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-table .btn{white-space:nowrap}@media (max-width:760px){.invoice-stat-grid{grid-template-columns:1fr}.invoice-table td[data-label=Åtgärd]{border-top:1px solid var(--border);margin-top:8px;padding-top:10px;display:block!important}.invoice-table td[data-label=Åtgärd]:before{display:none}.invoice-table td[data-label=Åtgärd] .btn{width:100%}}.mobile-admin-time-actions{display:none}.projects-table-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;display:flex}.projects-table-toolbar strong,.projects-table-toolbar span{display:block}.projects-table-toolbar strong{font-size:14px;font-weight:650}.projects-table-toolbar span{color:var(--text-3);margin-top:2px;font-size:12.5px}.checklist-table-card{overflow:hidden}.checklist-table{table-layout:fixed}.checklist-table td,.checklist-table th{vertical-align:top}.checklist-table th:first-child,.checklist-table td:first-child{width:46%}.checklist-table th:nth-child(2),.checklist-table td:nth-child(2){width:24%}.checklist-table th:nth-child(3),.checklist-table td:nth-child(3),.checklist-table th:nth-child(4),.checklist-table td:nth-child(4){width:15%}.checklist-table tbody tr:hover{cursor:default}.checklist-table .row-link,.checklist-question-title,.checklist-section-text,.checklist-question-note,.checklist-options-preview{overflow-wrap:anywhere;word-break:normal;min-width:0}.checklist-table .row-link,.checklist-question-title{color:var(--text);letter-spacing:-.1px;font-size:14px;font-weight:650;line-height:1.35}.checklist-table .row-link:hover{color:var(--accent-text)}.checklist-question-note,.checklist-options-preview{color:var(--text-3);margin-top:5px;font-size:12.5px;font-weight:450;line-height:1.4}.checklist-options-preview{color:var(--text-2)}.checklist-section-text{color:var(--text-2);font-size:13px;line-height:1.35;display:block}.checklist-detail-table .badge{white-space:normal;text-align:left;height:auto;min-height:22px;padding-top:3px;padding-bottom:3px;line-height:1.2}.project-export-modal{width:min(680px,100vw - 32px)}.project-export-head>div{min-width:0}.project-export-head strong,.project-export-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-export-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.project-export-grid .field{min-width:0;margin-bottom:0}.project-export-body,.project-export-section{gap:12px;display:grid}.project-export-body{gap:16px}.project-export-list{max-height:210px}.project-export-hint{margin-top:10px}.project-export-footer .btn{flex-shrink:0}@media (max-width:760px){.projects-table-toolbar{grid-template-columns:1fr;gap:9px;display:grid}.projects-table-toolbar .btn{width:100%}.checklist-table-card{margin-left:-2px;margin-right:-2px}.checklist-table{table-layout:auto}.checklist-table tr{padding:13px 14px 12px;position:relative}.checklist-table td,.checklist-table th{width:auto!important}.checklist-table td[data-label=Checklista],.checklist-table td[data-label=Fråga]{border-top:0!important;margin-top:0!important;padding-top:0!important;display:block!important}.checklist-table td[data-label=Checklista]:before,.checklist-table td[data-label=Fråga]:before{display:none}.checklist-table .row-link,.checklist-question-title{font-size:15.5px;font-weight:700;line-height:1.3}.checklist-question-note,.checklist-options-preview,.checklist-section-text{font-size:12.75px;line-height:1.38}.checklist-table td[data-label=Sektion],.checklist-table td[data-label=Frågor],.checklist-table td[data-label=Typ],.checklist-table td[data-label=Krav],.checklist-table td[data-label=Status]{align-items:flex-start}.checklist-table td[data-label=Krav] .row{justify-content:flex-end;min-width:0}.checklist-table td[data-label=Åtgärd],.checklist-table td[data-label=Rapport],.checklist-table td[data-label=PDF],.checklist-table td[data-label=Lägg\ till]{min-width:0;display:block!important}.checklist-table td[data-label=Åtgärd]:before,.checklist-table td[data-label=Rapport]:before,.checklist-table td[data-label=PDF]:before,.checklist-table td[data-label=Lägg\ till]:before{margin-bottom:7px;display:block}.checklist-table td[data-label=Åtgärd] .btn,.checklist-table td[data-label=Rapport] .btn,.checklist-table td[data-label=PDF] .btn,.checklist-table td[data-label=Lägg\ till] .btn{width:100%}.checklist-table td[data-label=Lägg\ till] .row{grid-template-columns:1fr;display:grid;gap:8px!important}.checklist-table td[data-label=Lägg\ till] input{width:100%;min-width:0}.checklist-detail-table .badge{justify-content:flex-start;max-width:100%}.project-export-modal.bottom-sheet{width:auto;max-height:82dvh}.project-export-head strong,.project-export-head span{white-space:normal}.project-export-grid{grid-template-columns:1fr;gap:10px}.project-export-footer{grid-template-columns:1fr;gap:10px;display:grid}.project-export-footer .btn{width:100%}.mobile-admin-time-actions{margin:-4px 0 14px;display:block}.mobile-admin-time-card{border:1px solid var(--border);background:var(--surface);min-height:64px;box-shadow:var(--shadow-sm);color:inherit;border-radius:16px;align-items:center;gap:11px;padding:12px 14px;display:flex}.mobile-admin-time-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.mobile-admin-time-card strong,.mobile-admin-time-card small{display:block}.mobile-admin-time-card strong{font-size:14.5px}.mobile-admin-time-card small{color:var(--text-3);margin-top:2px;font-size:12.5px;line-height:1.25}}.ios-calendar-shell{display:block}.ios-calendar-shell.desktop-inactive{display:none}.mac-calendar-shell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:none;overflow:hidden}.mac-calendar-shell.desktop-active{display:block}.calendar-page-head{margin-bottom:14px}.desktop-calendar-switch{flex-shrink:0}.calendar-worker-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.calendar-worker-filters button{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text-2);border-radius:999px;align-items:center;gap:7px;padding:0 12px 0 7px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.calendar-worker-filters button.active{border-color:var(--worker-color,var(--accent));color:var(--worker-color,var(--accent-text));background:color-mix(in srgb, var(--worker-color,var(--accent)) 11%, #fff);box-shadow:0 8px 18px #3e4a821a}.calendar-worker-filters span{background:var(--worker-color,var(--surface-3));color:#fff;border-radius:999px;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:10px;font-weight:850;line-height:1;display:grid}.worker-color-0{--worker-color:#206058;--worker-bg:#e8f2ef}.worker-color-1{--worker-color:#18a957;--worker-bg:#e6f6ec}.worker-color-2{--worker-color:#d98a0b;--worker-bg:#fbf0db}.worker-color-3{--worker-color:#387868;--worker-bg:#e8f2ef}.worker-color-4{--worker-color:#c2418d;--worker-bg:#fce7f3}.worker-color-5{--worker-color:#7c3aed;--worker-bg:#f3e8ff}.worker-color-6{--worker-color:#0f766e;--worker-bg:#ccfbf1}.worker-color-7{--worker-color:#dc2626;--worker-bg:#fee2e2}.worker-color-8{--worker-color:#475569;--worker-bg:#e2e8f0}.worker-color-9{--worker-color:#ea580c;--worker-bg:#ffedd5}.ios-month-card,.ios-day-card,.ios-week-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:22px;padding:clamp(16px,2vw,24px)}.mobile-calendar-switch{display:none}.ios-week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:14px;display:grid}.ios-week-strip button{border:1px solid var(--border);min-width:0;min-height:64px;color:var(--text);cursor:pointer;background:#fff;border-radius:15px;place-items:center;gap:2px;font-family:inherit;display:grid;position:relative}.ios-week-strip span{color:var(--text-3);text-transform:uppercase;font-size:11px;font-weight:800}.ios-week-strip strong{border-radius:999px;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.ios-week-strip button.weekend-day{background:var(--weekend-red-soft);border-color:color-mix(in srgb, var(--weekend-red) 22%, transparent)}.ios-week-strip button.weekend-day span,.ios-week-strip button.weekend-day strong{color:var(--weekend-red)}.ios-week-strip button.today strong{color:var(--accent-text);background:var(--accent-soft)}.ios-week-strip button.selected{border-color:var(--accent);background:var(--accent-soft)}.ios-week-strip button.selected strong{color:#fff;background:var(--accent)}.ios-week-strip i{background:var(--accent);border-radius:999px;width:5px;height:5px;font-size:0}.ios-week-list{gap:12px;display:grid}.ios-week-day-block{border:1px solid var(--border);background:var(--surface-2);border-radius:18px;gap:8px;padding:10px;display:grid}.ios-week-day-block.weekend-day{background:var(--weekend-red-soft);border-color:color-mix(in srgb, var(--weekend-red) 24%, transparent)}.ios-week-day-block.weekend-day .ios-week-day-head strong{color:var(--weekend-red)}.ios-week-day-head,.ios-week-empty-slot{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;font-family:inherit}.ios-week-day-head{justify-content:space-between;align-items:center;gap:10px;padding:2px 2px 4px;display:flex}.ios-week-day-head strong{font-size:14px}.ios-week-day-head span{color:var(--text-3);font-size:12px;font-weight:700}.ios-week-empty-slot{border:1px dashed var(--border-strong);min-height:42px;color:var(--accent-text);text-align:center;border-radius:13px;padding:0 12px;font-weight:750}.ios-day-nav{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin-bottom:12px;display:grid}.ios-day-nav button{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--accent-text);cursor:pointer;border-radius:999px;font-family:inherit;font-size:12px;font-weight:800}.ios-day-nav strong{color:var(--text-2);text-align:center;white-space:nowrap;font-size:13px}.mobile-long-press-event{touch-action:none;-webkit-user-select:none;user-select:none}.mobile-long-press-event.can-drag{cursor:grab}.mobile-long-press-event.long-press-pending{transform:scale(.985);box-shadow:0 8px 20px #2060582e}.mobile-long-press-event.dragging{z-index:18;cursor:grabbing;box-shadow:0 16px 34px #0c101c3d}.ios-mobile-time-day{min-width:0}body.route-schedule.calendar-drag-active .ios-timeline,body.route-schedule.calendar-drag-active .ios-cal{overscroll-behavior:contain;touch-action:none}body.route-schedule.calendar-drag-active .ios-timeline{-webkit-overflow-scrolling:auto;overflow:hidden}body.route-schedule.calendar-drag-active .ios-week-strip,body.route-schedule.calendar-drag-active .ios-day-focus-head{pointer-events:none}.ios-calendar-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.ios-calendar-toolbar strong,.ios-calendar-toolbar span{text-align:center;display:block}.ios-calendar-toolbar strong{letter-spacing:-.35px;font-size:20px}.ios-calendar-toolbar span{color:var(--text-3);margin-top:2px;font-size:13px}.ios-weekdays,.ios-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.ios-weekdays{color:var(--text-3);text-align:center;margin-bottom:10px;font-size:12px;font-weight:800}.ios-month-day{border:1px solid var(--border);min-height:clamp(74px,8vw,118px);color:var(--text);cursor:pointer;background:#fff;border-radius:18px;place-items:start center;padding-top:12px;font-family:inherit;font-size:16px;font-weight:650;display:grid;position:relative}.ios-month-day:hover{background:var(--accent-soft);border-color:#20605847}.ios-month-day.weekend-day{background:var(--weekend-red-soft);border-color:color-mix(in srgb, var(--weekend-red) 26%, transparent);color:var(--weekend-red)}.ios-month-day.muted-day{color:#3c3c4357;background:var(--surface-2)}.ios-month-day.muted-day.weekend-day{color:color-mix(in srgb, var(--weekend-red) 48%, transparent);background:color-mix(in srgb, var(--weekend-red-soft) 62%, var(--surface-2))}.ios-month-day.today{border-color:var(--accent);color:var(--accent-text)}.ios-month-day.selected{background:var(--accent);border-color:var(--accent);color:#fff}.ios-month-day i{color:#fff;background:currentColor;border-radius:999px;place-items:center;width:24px;min-width:24px;height:22px;font-size:11px;font-style:normal;font-weight:800;display:grid;position:absolute;bottom:10px}.ios-month-day.selected i{color:var(--accent-text);background:#fff}.ios-day-events{gap:10px;margin-bottom:14px;display:grid}.ios-event-card{border:1px solid var(--border);border-left:5px solid var(--worker-color,var(--accent));text-align:left;background:var(--worker-bg,var(--surface-2));cursor:pointer;border-radius:16px;width:100%;padding:12px;font-family:inherit}.ios-event-card:hover{border-color:var(--worker-color,var(--accent));background:color-mix(in srgb, var(--worker-color,var(--accent)) 14%, #fff)}.ios-event-card span,.ios-event-card strong,.ios-event-card small{display:block}.ios-event-card span{color:var(--text-3);font-size:12px;font-weight:700}.ios-event-card strong{margin-top:2px;font-size:15px}.ios-event-card small{color:var(--text-3);margin-top:3px;font-size:12.5px}.ios-empty{border:1px dashed var(--border-strong);text-align:center;color:var(--text-3);border-radius:16px;padding:18px 12px;font-size:13px}.ios-time-slots{gap:8px;display:grid}.ios-time-slots button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:15px;justify-content:space-between;align-items:center;min-height:48px;padding:0 13px;font-family:inherit;display:flex}.ios-time-slots button:hover{background:var(--accent-soft);border-color:#20605847}.ios-time-slots span{color:var(--text-3);font-weight:750}.ios-time-slots strong{color:var(--accent-text);font-size:13px}.mac-calendar-toolbar{border-bottom:1px solid var(--border);background:linear-gradient(180deg, #fff, var(--surface-2));justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.mac-calendar-toolbar strong{letter-spacing:-.2px;font-size:17px}.mac-calendar-toolbar>span{color:var(--text-3);font-size:13px}.mac-week-header{border-bottom:1px solid var(--border);grid-template-columns:64px repeat(7,minmax(0,1fr));display:grid}.mac-week-header button{border:0;border-left:1px solid var(--border);min-height:58px;color:var(--text-2);cursor:pointer;background:#fff;place-items:center;gap:2px;font-family:inherit;display:grid}.mac-week-header button span{text-transform:uppercase;color:var(--text-3);font-size:11px;font-weight:700}.mac-week-header button strong{border-radius:999px;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.mac-week-header button.today strong{color:var(--accent-text);background:var(--accent-soft)}.mac-week-header button.selected strong{color:#fff;background:var(--accent)}.mac-timeline{grid-template-columns:64px repeat(7,minmax(0,1fr));min-height:672px;display:grid}.mac-time-column{border-right:1px solid var(--border);background:var(--surface-2)}.mac-time-column div{text-align:right;height:56px;color:var(--text-3);border-bottom:1px solid var(--border);padding:6px 8px 0 0;font-size:11px}.mac-day-column{border-right:1px solid var(--border);background:#fff;min-width:0;position:relative}.mac-week-header button.weekend-day,.mac-day-column.weekend-day{background:var(--weekend-red-soft)}.mac-week-header button.weekend-day span,.mac-week-header button.weekend-day strong{color:var(--weekend-red)}.mac-day-column.weekend-day .mac-slot:hover{background:color-mix(in srgb, var(--weekend-red) 10%, transparent)}.mac-day-column:last-child{border-right:0}.mac-slot{border:0;border-bottom:1px solid var(--border);cursor:cell;background:0 0;width:100%;height:56px;display:block}.mac-slot:hover{background:#2060580d}.mac-event{z-index:2;text-align:left;cursor:pointer;color:var(--worker-color,var(--accent-text));background:color-mix(in srgb, var(--worker-color,var(--accent)) 13%, #fff);border:1px solid;border-left-width:4px;border-radius:9px;padding:7px 8px;font-family:inherit;position:absolute;overflow:hidden;box-shadow:0 8px 18px #00000014}.mac-event strong,.mac-event span,.mac-event small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.mac-event strong{font-size:12px;line-height:1.2}.mac-event span{margin-top:2px;font-size:11px;font-weight:700}.mac-event small{opacity:.78;margin-top:2px;font-size:10.5px}.calendar-modal-backdrop{z-index:150;background:#0f121c2e;position:fixed;inset:0}.calendar-popover{z-index:160;background:var(--popup-surface);border:1px solid var(--border-strong);width:min(460px,100vw - 32px);max-height:calc(100dvh - 128px);box-shadow:var(--shadow-lg);border-radius:18px;padding:16px;position:fixed;top:96px;right:28px;overflow:auto}.sheet-grabber{display:none}.calendar-popover-head,.calendar-popover-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-popover-head{border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:12px}.calendar-popover-head strong,.calendar-popover-head span{display:block}.calendar-popover-head span{color:var(--text-3);margin-top:2px;font-size:12.5px}.calendar-popover-footer{border-top:1px solid var(--border);padding-top:12px}.booking-sheet-footer{flex-wrap:wrap}.inspection-protocol-actions,.inspection-job-actions,.inspection-sibling-protocol-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inspection-sibling-protocols strong{margin-bottom:8px;display:block}.inspection-protocol-action-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.calendar-form .field{margin-bottom:12px}.calendar-form textarea.input{resize:vertical;min-height:84px;padding-top:10px}.calendar-worker-picker{grid-column:1/-1}.booking-time-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-time-fields .field{margin-bottom:0}.schedule-booking-form .field,.schedule-booking-form .input,.schedule-booking-form select,.schedule-booking-form textarea{min-width:0}.readonly-input{color:var(--text-2);align-items:center;display:flex}.worker-checkbox-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;padding:10px}.worker-checkbox-actions{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.worker-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.worker-checkbox{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:38px;color:var(--text-2);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:560;display:flex}.worker-checkbox.selected{border-color:color-mix(in srgb, var(--worker-color,var(--accent)) 55%, var(--border));background:color-mix(in srgb, var(--worker-color,var(--accent)) 13%, #fff);color:var(--text)}.worker-checkbox input{accent-color:var(--worker-color,var(--accent))}.worker-checkbox span{background:var(--worker-color,var(--accent));color:#fff;border-radius:999px;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:10px;font-weight:760;line-height:1;display:inline-grid}.time-correction-modal{width:min(640px,100vw - 32px)}.time-correction-head>div{min-width:0}.time-correction-head strong,.time-correction-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.time-correction-body{gap:14px;display:grid}.time-report-view-modal{width:min(680px,100vw - 32px)}.time-report-view-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.time-report-view-summary>div,.time-report-view-box,.time-report-view-meta{border:1px solid var(--border);background:var(--surface-2);border-radius:14px}.time-report-view-summary>div{min-width:0;padding:11px 12px}.time-report-view-summary span,.time-report-view-meta span{color:var(--text-3);margin-bottom:3px;font-size:12px;display:block}.time-report-view-summary strong,.time-report-view-meta strong{overflow-wrap:anywhere;font-size:14px;line-height:1.25;display:block}.time-report-view-box{color:var(--text);padding:12px;font-size:13.5px;line-height:1.45}.time-report-view-box.multiline{white-space:pre-wrap}.time-report-view-stack{gap:8px;display:grid}.time-report-view-meta{padding:10px 12px}.time-report-view-tags{flex-wrap:wrap;gap:6px;display:flex}.time-correction-grid{grid-template-columns:minmax(130px,.8fr) minmax(130px,.8fr) minmax(0,1.4fr);align-items:end;gap:12px;display:grid}.time-correction-grid .field{min-width:0;margin-bottom:0}.time-correction-wide{min-width:0}.time-correction-section{gap:8px;min-width:0;display:grid}.time-correction-label{color:var(--text);font-size:13px;font-weight:560;display:block}.time-correction-segment{flex-wrap:wrap;width:fit-content;max-width:100%}.time-correction-list{gap:8px;max-height:190px;padding:2px 2px 4px;display:grid;overflow-y:auto}.time-correction-option{border:1px solid var(--border);background:var(--surface-2);width:100%;min-width:0;min-height:46px;color:var(--text);text-align:left;border-radius:12px;align-items:center;gap:10px;padding:9px 10px;display:flex}.time-correction-option:hover,.time-correction-option.selected{background:var(--accent-soft);border-color:#20605859}.time-correction-option>span:last-child{flex:1;min-width:0}.time-correction-option strong,.time-correction-option small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.time-correction-option strong{font-size:13.5px;font-weight:650;line-height:1.25}.time-correction-option small{color:var(--text-3);margin-top:2px;font-size:12px;line-height:1.2}.time-correction-check{border:1.5px solid var(--border-strong);background:var(--surface);color:#fff;border-radius:7px;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:13px;font-weight:800;display:grid}.time-correction-option.selected .time-correction-check{background:var(--accent);border-color:var(--accent)}.time-correction-footer{align-items:flex-start}.time-correction-footer .cell-sub{min-width:0;line-height:1.35}.time-correction-footer .btn{flex-shrink:0}@media (max-width:760px){.desktop-calendar-switch,.mac-calendar-shell,.mac-calendar-shell.desktop-active,.desktop-calendar{display:none}.ios-calendar-shell,.ios-calendar-shell.desktop-inactive{display:block}.calendar-page-head .sub{max-width:32ch}.ios-month-card,.ios-day-card,.ios-week-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:22px;padding:14px}.mobile-calendar-switch{width:100%;margin-bottom:10px;display:flex}.mobile-calendar-switch button{flex:1}.ios-calendar-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.ios-calendar-toolbar strong,.ios-calendar-toolbar span{text-align:center;display:block}.ios-calendar-toolbar strong{letter-spacing:-.3px;font-size:17px}.ios-calendar-toolbar span{color:var(--text-3);margin-top:2px;font-size:12.5px}.ios-weekdays,.ios-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.ios-weekdays{color:var(--text-3);text-align:center;margin-bottom:8px;font-size:11px;font-weight:800}.ios-month-day{aspect-ratio:1;min-height:42px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:999px;place-items:center;font-family:inherit;font-weight:650;display:grid;position:relative}.ios-month-day.weekend-day{background:var(--weekend-red-soft);color:var(--weekend-red)}.ios-month-day.muted-day{color:#3c3c4357}.ios-month-day.muted-day.weekend-day{color:color-mix(in srgb, var(--weekend-red) 48%, transparent)}.ios-month-day.today{border-color:var(--accent)}.ios-month-day.selected{background:var(--accent);color:#fff}.ios-month-day i{background:currentColor;border-radius:999px;width:5px;height:5px;font-size:0;position:absolute;bottom:4px}.ios-day-events{gap:9px;margin-bottom:14px;display:grid}.calendar-worker-filters{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.calendar-worker-filters button{flex:none}.ios-event-card{border:1px solid var(--border);border-left:5px solid var(--worker-color,var(--accent));text-align:left;background:var(--worker-bg,var(--surface-2));border-radius:16px;width:100%;padding:12px;font-family:inherit}.ios-event-card span,.ios-event-card strong,.ios-event-card small{display:block}.ios-event-card span{color:var(--text-3);font-size:12px;font-weight:700}.ios-event-card strong{margin-top:2px;font-size:15px}.ios-event-card small{color:var(--text-3);margin-top:3px;font-size:12.5px}.ios-empty{border:1px dashed var(--border-strong);text-align:center;color:var(--text-3);border-radius:16px;padding:18px 12px;font-size:13px}.ios-time-slots{gap:8px;display:grid}.ios-time-slots button{border:1px solid var(--border);background:#fff;border-radius:15px;justify-content:space-between;align-items:center;min-height:48px;padding:0 13px;font-family:inherit;display:flex}.ios-time-slots span{color:var(--text-3);font-weight:750}.ios-time-slots strong{color:var(--accent-text);font-size:13px}.calendar-popover.bottom-sheet{width:auto;max-height:min(82dvh,640px);padding:8px 12px calc(14px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;inset:auto 0 0;overflow-x:hidden}.schedule-booking-form .grid-2{grid-template-columns:minmax(0,1fr);gap:0}.schedule-booking-form .field{margin-bottom:10px}.schedule-booking-form .input,.schedule-booking-form .select,.schedule-booking-form textarea.input{width:100%;max-width:100%;height:42px;min-height:42px;padding-left:10px;padding-right:10px}.schedule-booking-form textarea.input{height:auto;min-height:76px}.booking-date-field .input{max-width:190px}.booking-time-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-time-fields .input{min-width:0}.worker-checkbox-grid{grid-template-columns:1fr}.time-correction-modal.bottom-sheet{width:auto;max-height:90dvh}.time-correction-head{align-items:flex-start}.time-correction-head strong,.time-correction-head span{white-space:normal}.time-correction-grid{grid-template-columns:1fr;gap:10px}.time-report-view-summary{grid-template-columns:1fr}.time-correction-section{gap:7px}.time-correction-list{max-height:170px}.time-correction-option{min-height:50px}.time-correction-option strong,.time-correction-option small{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.time-correction-option small{-webkit-line-clamp:1}.time-correction-footer{grid-template-columns:1fr;gap:10px;display:grid}.time-correction-footer .btn{width:100%}.sheet-grabber{background:#3c3c4340;border-radius:999px;width:44px;height:5px;margin:4px auto 12px;display:block}.calendar-form .grid-2{grid-template-columns:1fr;gap:0}}.time-report-calendar-card{margin-bottom:16px}.time-report-person-filter{gap:12px;margin-bottom:16px;display:grid}.time-report-person-filter-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.time-report-person-filter h3{margin:0 0 4px;font-size:15px}.time-report-person-filter p{color:var(--text-3);margin:0;font-size:13px}.time-report-person-mode{flex:none;width:fit-content}.time-report-person-combo{max-width:360px}.time-report-calendar-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.time-report-calendar-head h3{margin:0 0 4px;font-size:16px}.time-report-calendar-head p{color:var(--text-3);margin:0;font-size:13px}.time-report-calendar-controls{justify-items:end;gap:10px;display:grid}.time-report-mode-toggle{width:fit-content}.time-report-calendar-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.time-report-calendar-nav strong{text-align:center;text-transform:capitalize;min-width:132px}.time-report-calendar-scroll{scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;padding-bottom:8px;overflow:auto hidden}.time-report-weekdays,.time-report-calendar-grid{grid-template-columns:repeat(7,minmax(154px,1fr));gap:8px;min-width:1126px;display:grid}.time-report-weekdays{color:var(--text-3);text-align:center;margin-bottom:8px;font-size:12px;font-weight:650}.time-report-calendar-grid.week-mode .time-report-day-cell{min-height:372px}.time-report-day-cell{border:1px solid var(--border);background:var(--surface);min-height:150px;color:var(--text);text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;gap:7px;min-width:0;max-width:100%;padding:8px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.time-report-day-cell:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.time-report-day-cell.weekend-day{background:color-mix(in srgb, var(--weekend-red) 82%, var(--surface));border-color:color-mix(in srgb, var(--weekend-red) 34%, transparent);color:#111827}.time-report-day-cell.muted-month{opacity:.46}.time-report-day-cell.is-today{border-color:var(--accent)}.time-report-day-cell.has-report{background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.time-report-day-cell.weekend-day.has-report{background:color-mix(in srgb, var(--weekend-red) 78%, var(--surface))}.time-report-day-cell.has-many-reports{min-height:190px}.time-report-day-head{justify-content:space-between;align-items:flex-start;gap:8px;min-height:24px;display:flex}.time-report-day-number{color:var(--text);margin-left:auto;font-size:18px;font-weight:800;line-height:1}.time-report-day-total{color:var(--accent-text);font-size:12px;font-weight:850;line-height:1}.time-report-day-cell.weekend-day .time-report-day-total{color:#111827}.time-report-entry-list{gap:6px;min-width:0;max-width:100%;display:grid}.time-report-day-count-bubble{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);background:color-mix(in srgb, var(--accent) 18%, #fff);width:100%;min-height:76px;color:var(--accent-text);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-family:inherit;display:none}.time-report-day-count-bubble strong{font-size:28px;font-weight:900;line-height:1}.time-report-day-count-bubble span{font-size:12px;font-weight:850}.time-report-entry-bubble{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);background:color-mix(in srgb, var(--accent) 34%, #fff);color:#08131f;text-align:left;border-radius:8px;flex-direction:column;align-items:stretch;gap:4px;width:100%;min-width:0;max-width:100%;min-height:76px;padding:7px 7px 6px;font-family:inherit;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff73}.time-report-entry-bubble:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 42%, #fff)}.time-report-entry-bubble span{color:#07111c;overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:4;-webkit-box-orient:vertical;min-width:0;max-width:100%;font-size:12.5px;font-weight:850;line-height:1.24;display:-webkit-box;overflow:hidden}.time-report-entry-bubble strong{color:#07111c;white-space:nowrap;margin-top:auto;font-size:12.5px;font-weight:750;line-height:1}.time-report-day-cell.weekend-day .time-report-entry-bubble{background:#ffffff3d;border-color:#ffffff7a}.time-report-day-create-zone{min-height:24px;color:var(--text-3);opacity:.78;background:#ffffffad;border-radius:8px;place-items:center;margin-top:auto;font-size:12px;font-weight:750;display:grid}.time-report-day-cell:hover .time-report-day-create-zone{color:var(--accent-text);background:var(--accent-soft);opacity:1}.time-report-day-cell.weekend-day .time-report-day-create-zone{color:#111827ad;background:#ffffff3d}.time-report-day-view-list{gap:8px;max-height:min(54dvh,520px);padding:6px 0;display:grid;overflow-y:auto}.time-report-day-view-row{border:1px solid var(--border);background:var(--surface-2);width:100%;min-width:0;min-height:58px;color:var(--text);text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;display:flex}.time-report-day-view-row:hover{border-color:var(--accent);background:var(--accent-soft)}.time-report-day-view-row span{gap:3px;min-width:0;display:grid}.time-report-day-view-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.time-report-day-view-row small{color:var(--text-3);font-weight:700}@media (max-width:720px){.time-report-calendar-head,.time-report-person-filter-head{display:grid}.time-report-person-mode{width:100%}.time-report-person-combo{max-width:none}.time-report-calendar-controls{justify-items:stretch}.time-report-mode-toggle{width:100%}.time-report-calendar-nav{justify-content:space-between}.time-report-calendar-scroll{margin-inline:-4px;padding-inline:4px}.time-report-weekdays,.time-report-calendar-grid{grid-template-columns:repeat(7,minmax(96px,1fr));gap:4px;min-width:696px}.time-report-calendar-grid.week-mode .time-report-day-cell{min-height:260px}.time-report-day-cell{border-radius:10px;gap:5px;min-height:104px;padding:5px}.time-report-day-cell.has-many-reports{min-height:136px}.time-report-day-head{min-height:22px}.time-report-day-number{font-size:16px}.time-report-day-total{font-size:11px}.time-report-entry-list.mobile-collapsed{display:none}.time-report-day-count-bubble{border-radius:7px;min-height:60px;display:flex}.time-report-day-count-bubble strong{font-size:22px}.time-report-entry-bubble{border-radius:7px;min-height:60px;padding:6px 5px 5px}.time-report-entry-bubble span{-webkit-line-clamp:4;font-size:11.5px;line-height:1.22}.time-report-entry-bubble strong{font-size:11.5px}.time-report-day-create-zone{min-height:24px;font-size:11px}}.project-time-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-time-table-card{overflow-x:visible}.project-time-table{table-layout:fixed;width:100%;min-width:0}.project-time-table th,.project-time-table td{vertical-align:middle;min-width:0;padding:9px 7px;font-size:12.5px}.project-time-table th{white-space:normal;line-height:1.15}.project-time-table td{text-overflow:ellipsis;overflow:hidden}.project-time-table th:first-child,.project-time-table td:first-child{width:6.2%}.project-time-table th:nth-child(2),.project-time-table th:nth-child(3),.project-time-table th:nth-child(4),.project-time-table th:nth-child(5),.project-time-table th:nth-child(13),.project-time-table th:nth-child(14),.project-time-table td:nth-child(2),.project-time-table td:nth-child(3),.project-time-table td:nth-child(4),.project-time-table td:nth-child(5),.project-time-table td:nth-child(13),.project-time-table td:nth-child(14){text-align:center;width:4.2%}.project-time-table th:nth-child(6),.project-time-table td:nth-child(6){width:13.5%}.project-time-table th:nth-child(7),.project-time-table td:nth-child(7){width:10%}.project-time-table th:nth-child(8),.project-time-table td:nth-child(8){width:9%}.project-time-table th:nth-child(9),.project-time-table td:nth-child(9){width:5.3%}.project-time-table th:nth-child(10),.project-time-table td:nth-child(10),.project-time-table th:nth-child(11),.project-time-table td:nth-child(11){width:7%}.project-time-table th:nth-child(12),.project-time-table td:nth-child(12){width:7.7%}.project-time-table th:nth-child(14),.project-time-table td:nth-child(14){width:6%}.project-time-table .cell-strong,.project-time-table .cell-sub,.project-time-table .badge,.project-time-table .row-link{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.project-time-icon-button,.project-time-coins{border:1px solid var(--border);background:var(--surface);min-width:28px;min-height:28px;color:var(--text);cursor:pointer;border-radius:9px;place-items:center;font-family:inherit;font-size:11px;font-weight:850;text-decoration:none;display:inline-grid}.project-time-icon-button:hover,.project-time-coins:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.project-time-icon-button.pdf{color:var(--red);background:color-mix(in srgb, var(--red-soft) 34%, #fff)}.project-time-icon-button.unbilled{color:#9a6a00;background:color-mix(in srgb, var(--amber-soft) 46%, #fff)}.project-time-icon-button.xlsx{color:#19723a;background:color-mix(in srgb, var(--green-soft) 46%, #fff)}.project-time-icon-button.edit{color:var(--accent-text);background:color-mix(in srgb, var(--accent-soft) 52%, #fff)}.project-time-coins{background:color-mix(in srgb, var(--amber-soft) 68%, #fff);color:#b77900;font-size:19px}.project-time-file-icon{width:19px;height:19px;display:block;overflow:visible}.project-time-file-icon .file-page{fill:#fff;stroke:currentColor;stroke-width:1.6px}.project-time-file-icon .file-fold{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round}.project-time-file-icon .file-band{fill:currentColor;rx:2.2px}.project-time-file-icon text{fill:#fff;letter-spacing:.1px;font-family:Inter,system-ui,sans-serif;font-size:6.1px;font-weight:900}.pdf-coins-file{width:23px;height:20px;position:relative}.pdf-coins-file .pdf-file{width:18px;height:18px}.coin-stack{width:10px;height:11px;position:absolute;bottom:0;right:-1px}.coin-stack i{background:#f2b53e;border:1px solid #c98714;border-radius:999px;width:10px;height:5px;position:absolute;left:0;box-shadow:inset 0 1px #ffffffb8}.coin-stack i:first-child{bottom:0}.coin-stack i:nth-child(2){bottom:3px}.coin-stack i:nth-child(3){bottom:6px}.excel-file .excel-sheet{fill:#f8fffb;stroke:#1f7a45;stroke-width:1.5px}.excel-file .excel-panel{fill:#1f7a45}.excel-file .excel-x{fill:#fff}.excel-file .excel-lines{fill:none;stroke:#1f7a45;stroke-width:1.8px;stroke-linecap:round}.project-time-edit-icon{width:18px;height:18px;display:block}.project-time-edit-icon .edit-paper{fill:#fff;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round}.project-time-edit-icon .edit-fold{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round}.project-time-edit-icon .edit-pencil{fill:#206058;stroke:#174d45;stroke-width:.8px;stroke-linejoin:round}.project-time-edit-icon .edit-pencil-tip{fill:#f8d27a}.project-time-deactivate-switch{border:1px solid color-mix(in srgb, var(--green) 34%, transparent);background:linear-gradient(180deg, #3d927f, var(--green));cursor:pointer;border-radius:999px;justify-content:flex-end;align-items:center;width:34px;height:20px;padding:2px;display:inline-flex;box-shadow:inset 0 1px #ffffff57,0 1px 3px #00000014}.project-time-deactivate-switch:hover{border-color:color-mix(in srgb, var(--red) 45%, transparent);background:linear-gradient(180deg, #df6a63, var(--red))}.project-time-deactivate-switch:disabled{opacity:.58;cursor:wait}.project-time-deactivate-knob{background:#fff;border-radius:999px;width:14px;height:14px;box-shadow:0 1px 4px #00000038}.project-time-no-invoice{color:var(--text-3);font-weight:750}.project-time-description{min-width:0;max-width:100%;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.25;overflow:hidden}.project-time-unbilled{color:#9a6a00;font-weight:850}.project-invoice-feedback{color:var(--green);margin-bottom:12px;font-weight:750}.project-invoice-modal{z-index:160;background:var(--popup-surface);border:1px solid var(--border-strong);width:min(520px,100vw - 28px);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-lg);border-radius:20px;padding:20px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.project-invoice-close{width:34px;height:34px;color:var(--text-3);background:0 0;border:0;border-radius:999px;font-size:24px;line-height:1;position:absolute;top:10px;right:10px}.project-invoice-close:hover{background:var(--muted);color:var(--text)}.project-invoice-form{gap:14px;padding-top:4px;display:grid}.project-invoice-title-block{padding-right:32px}.project-invoice-title-block h2{letter-spacing:-.2px;margin:0;font-size:22px}.project-invoice-title-block p{color:var(--text-3);margin:5px 0 0;font-size:13px;line-height:1.35}.project-invoice-summary{border:1px solid var(--border);background:var(--muted);border-radius:14px;gap:3px;min-width:0;padding:12px;display:grid}.project-invoice-summary span{color:var(--text-3);font-size:12px;font-weight:800}.project-invoice-summary strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-invoice-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.project-invoice-form .field{min-width:0;margin:0}.project-invoice-form label,.project-invoice-section label{color:var(--text);margin-bottom:7px;font-size:13px;font-weight:800;display:block}.project-invoice-input{border-radius:12px;height:42px;font-size:15px}.project-invoice-segment{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.project-invoice-segment button{border:1px solid var(--border);background:var(--surface-2);min-height:42px;color:var(--text-2);border-radius:12px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:850}.project-invoice-segment button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}.project-invoice-actions{justify-content:flex-end;gap:8px;display:flex}.project-invoice-actions .btn{border-radius:12px;min-width:112px;height:42px}@media (max-width:760px){.project-time-stat-grid{grid-template-columns:1fr}.project-time-table{table-layout:auto;min-width:0}.project-time-table-card{overflow-x:visible}.project-time-table th,.project-time-table td{white-space:normal;padding:13px 20px;font-size:14px}.project-time-table .cell-strong,.project-time-table .cell-sub,.project-time-table .badge,.project-time-table .row-link{white-space:normal}.project-time-table td[data-label=PDF],.project-time-table td[data-label=Ej],.project-time-table td[data-label=XLSX],.project-time-table td[data-label=Ä],.project-time-table td[data-label=Fakt\.],.project-time-table td[data-label=Avakt\.]{align-items:center;gap:6px;margin:6px 6px 0 0;display:inline-flex!important}.project-time-table td[data-label=PDF]:before,.project-time-table td[data-label=Ej]:before,.project-time-table td[data-label=XLSX]:before,.project-time-table td[data-label=Ä]:before,.project-time-table td[data-label=Fakt\.]:before,.project-time-table td[data-label=Avakt\.]:before{display:none}.project-time-description{white-space:normal;overflow-wrap:anywhere;max-width:none}.project-invoice-modal.bottom-sheet{width:auto;max-height:88dvh;padding:8px 16px calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;inset:auto 0 0;transform:none}.project-invoice-date-grid,.project-invoice-segment{grid-template-columns:1fr}.project-invoice-summary strong{white-space:normal;overflow-wrap:anywhere}.project-invoice-actions .btn{width:100%}}.project-deduction-card{border-color:color-mix(in srgb, var(--amber) 20%, var(--border))}.project-deduction-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.project-deduction-head h3{margin:0;font-size:14px;font-weight:700}.project-deduction-head p{color:var(--text-3);margin:4px 0 0;font-size:13px}.project-deduction-body{gap:14px;margin-top:16px;display:grid}.project-deduction-checks{flex-wrap:wrap;gap:12px}.project-deduction-segment{flex-wrap:wrap;width:fit-content;max-width:100%}.project-deduction-panel{border:1px solid var(--border);background:var(--muted);border-radius:14px;padding:12px}.project-deduction-panel .field:last-child{margin-bottom:0}.project-deduction-people{gap:10px;display:grid}.project-deduction-people-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-deduction-people-head label{margin:0;font-weight:800}.project-deduction-person{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;padding:10px;display:grid}.project-deduction-person .field{min-width:0;margin-bottom:0}@media (max-width:760px){.project-deduction-head,.project-deduction-people-head{flex-direction:column;align-items:stretch}.project-deduction-person{grid-template-columns:1fr}}.project-client-label-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.quick-client-card{border:1px solid var(--border);background:var(--muted);border-radius:14px;margin-top:12px;padding:14px}.client-create-form .card{gap:14px;display:grid}.client-create-form .field{margin-bottom:0}.client-form-section-title{gap:4px;margin-bottom:2px;display:grid}.client-form-section-title h3{margin:0;font-size:15px;font-weight:750}.client-form-section-title p{color:var(--text-2);margin:0;font-size:13px;line-height:1.45}.client-deduction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.deduction-choice{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--text-2);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:11px 13px;font-weight:750;display:flex}.deduction-choice.active{background:var(--accent-soft);color:var(--accent-text);border-color:#20605861}.client-advanced-details summary{cursor:pointer;color:var(--text);font-weight:700}.checkbox-row{color:var(--text-2);align-items:center;gap:8px;font-weight:650;display:inline-flex}@media (max-width:760px){.project-client-label-row{align-items:flex-start}.client-deduction-grid{grid-template-columns:1fr}}.project-list-controls{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.project-list-controls .tab-bar{flex:1;margin-bottom:0}.project-sort-control{color:var(--text-2);white-space:nowrap;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.project-sort-control .select{min-width:180px;height:38px}@media (max-width:760px){.project-list-controls{flex-direction:column;align-items:stretch}.project-sort-control{justify-content:space-between}.project-sort-control .select{flex:1;min-width:0}}.calendar-app{padding:0;overflow:hidden}.desktop-month-calendar.desktop-inactive{display:none}.desktop-month-calendar.desktop-active{display:block}.mac-toolbar{border-bottom:1px solid var(--border);background:#ffffffeb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:10px 18px;display:flex}.mac-title{letter-spacing:-.5px;color:var(--text-2);margin:0;font-size:24px;font-weight:400}.mac-title strong{color:var(--text);font-weight:750}.mac-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.mac-nav{align-items:center;gap:2px;display:inline-flex}.mac-nav .btn{height:30px;min-height:0;padding:0 10px}.mac-nav .btn.ghost{color:var(--text-2);font-size:17px}.mac-new{height:30px;min-height:0;padding:0 12px;font-size:13.5px}.view-switch{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:2px;display:inline-flex}.view-switch button{height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:560}.view-switch button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.mac-scroll{max-height:640px;position:relative;overflow:auto}.week-days-head{border-bottom:1px solid var(--border);z-index:7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff7;display:grid;position:sticky;top:0}.week-days-head>div,.week-days-head>button{border:0;border-left:1px solid var(--border);cursor:pointer;background:0 0;align-content:center;justify-items:center;gap:1px;min-height:54px;padding:7px 10px;font-family:inherit;display:grid}.week-days-head>div:first-child,.week-days-head>button:first-of-type{border-left:0}.week-days-head span{color:var(--text-3);text-transform:uppercase;font-size:11px;font-weight:650}.week-days-head strong{border-radius:50%;place-items:center;width:28px;height:28px;font-size:15px;font-weight:560;display:grid}.week-days-head .today span{color:var(--ios-red)}.week-days-head .today strong{background:var(--ios-red);color:#fff}.week-days-head .selected strong{background:var(--text);color:var(--surface)}.time-grid{display:grid;position:relative}.time-col{border-right:1px solid var(--border);background:var(--surface)}.time-col div{text-align:right;height:56px;color:var(--text-3);padding:0 8px 0 0;font-size:11px;transform:translateY(-7px)}.time-day{border-right:1px solid var(--border);background:var(--surface);position:relative}.time-day:last-child{border-right:0}.hour-line{cursor:cell;background:0 0;border:0;border-bottom:1px solid #1c1c1e0f;width:100%;height:56px;display:block}.hour-line:hover{background:#2060580d}.event-block{text-align:left;cursor:pointer;color:var(--worker-color,var(--accent-text));background:var(--worker-bg,var(--accent-soft));border:0;border-radius:7px;flex-direction:column;padding:4px 8px 4px 11px;font-family:inherit;display:flex;position:absolute;right:8px;overflow:hidden;box-shadow:0 1px 2px #1c1c1e14}.event-block:before{content:"";opacity:.85;background:currentColor;width:4px;position:absolute;top:0;bottom:0;left:0}.event-block strong{font-size:12px;font-weight:650;line-height:1.25}.event-block span,.event-block small{opacity:.82;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.mac-now{border-top:2px solid var(--ios-red);z-index:5;pointer-events:none;position:absolute;left:0;right:0}.mac-now i{background:var(--ios-red);border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:-4px}.overview-layout{grid-template-columns:248px minmax(0,1fr);min-height:680px;display:grid}.mini-month-panel{border-right:1px solid var(--border);background:var(--surface);padding:16px}.mini-month-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.mini-month-head strong{font-size:17px}.mini-month-head span{color:var(--text-3);font-size:12px}.mini-cal{grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:18px;display:grid}.mini-cal .mini-wd{text-align:center;color:var(--text-3);padding:3px 0;font-size:10px;font-weight:700}.mini-cal button{appearance:none;height:26px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;font-family:inherit;font-size:11.5px}.mini-cal button:hover{background:var(--surface-2)}.mini-cal button.focus{background:var(--accent-soft);color:var(--accent-text);font-weight:700}.mini-cal button.today{background:var(--ios-red);color:#fff;font-weight:700}.agenda-list h3{margin-bottom:10px;font-size:14px}.agenda-list{gap:8px;display:grid}.agenda-list article{border-radius:var(--radius);background:var(--surface-2);grid-template-columns:10px 1fr;align-items:start;gap:9px;padding:9px;display:grid}.agenda-list strong{font-size:12.5px}.agenda-list p{color:var(--text-3);margin:0;font-size:12px}.dot{background:var(--worker-color,var(--accent));border-radius:50%;width:8px;height:8px;margin-top:5px;display:inline-block}.month-grid{grid-template-rows:42px 1fr;min-width:0;display:grid}.month-weekdays{border-bottom:1px solid var(--border);grid-template-columns:repeat(7,1fr);display:grid}.month-weekdays span{color:var(--text-3);text-transform:uppercase;border-left:1px solid var(--border);text-align:right;padding:13px 10px;font-size:12px;font-weight:650}.month-cells{grid-template-columns:repeat(7,1fr);grid-auto-rows:106px;display:grid}.month-cell{border-left:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);padding:6px;overflow:hidden}.month-cell.weekend{background:#fafafa}.month-cell.muted{background:var(--surface-2)}.month-cell.muted .month-date{color:var(--text-3);opacity:.55}.month-cell small{color:var(--text-3);margin-top:2px;font-size:10.5px;display:block}.month-date{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:24px;height:24px;margin:0 0 3px auto;font-family:inherit;font-size:12px;font-weight:600;display:grid}.month-cell.today .month-date{background:var(--ios-red);color:#fff}.month-event{text-align:left;appearance:none;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;width:100%;color:var(--worker-color,var(--accent-text));background:var(--worker-bg,var(--accent-soft));border:0;border-radius:5px;margin-top:3px;padding:2px 6px;font-family:inherit;font-size:11px;line-height:1.4;display:block;overflow:hidden}@media (min-width:761px){.ios-calendar-shell,.mobile-ios-worker-filters{display:none}}@media (max-width:760px){body.route-schedule .topbar{min-height:48px;padding:calc(6px + env(safe-area-inset-top)) 10px 6px;z-index:320;display:flex}body.route-schedule .topbar h1{text-align:center;letter-spacing:-.04em;flex:auto;font-size:20px;font-weight:950}body.route-schedule .content{padding:8px 0 calc(20px + env(safe-area-inset-bottom));overflow-x:hidden}body.route-schedule .calendar-page-head,.desktop-month-calendar,.mac-calendar-shell,.desktop-month-calendar.desktop-active,.mac-calendar-shell.desktop-active{display:none}.ios-calendar-shell{background:linear-gradient(#ffffffad,#f4faf78a);border:1px solid #ffffffb8;border-radius:24px;width:100%;max-width:580px;margin:0 auto;padding:8px 0 12px;display:block;box-shadow:0 18px 50px #173f361a,inset 0 1px #ffffffd1}.ios-calendar-shell.desktop-inactive{display:block}.calendar-popover-footer{grid-template-columns:1fr;align-items:stretch;gap:10px;display:grid}.calendar-popover-footer .btn{width:100%}.calendar-popover-footer .spacer,.desktop-worker-filters{display:none}.mobile-calendar-switch{background:#ffffff85;border:1px solid #ffffff9e;border-radius:24px;grid-template-columns:1fr 1fr;width:100%;margin:0 0 12px;padding:6px;display:grid;box-shadow:inset 0 1px #ffffffb3}.mobile-calendar-switch button{height:48px;color:var(--text-3);background:0 0;border:0;border-radius:19px;font-family:inherit;font-size:16px;font-weight:950}.mobile-calendar-switch button.on{color:var(--accent);background:#fff;box-shadow:0 10px 26px #173f361f}.mobile-ios-worker-filters{scrollbar-width:none;flex-wrap:nowrap;gap:8px;margin:0 0 18px;padding:0 0 2px;display:flex;overflow-x:auto}.mobile-ios-worker-filters::-webkit-scrollbar{display:none}.mobile-ios-worker-filters button{background:#ffffffb8;border-radius:999px;flex:none;min-height:44px;box-shadow:0 8px 18px #173f3614}.mobile-ios-worker-filters button.active{background:#fff;box-shadow:0 10px 24px #173f361f}.ios-cal{-webkit-backdrop-filter:blur(18px)saturate(1.2);background:#ffffffb8;border:1px solid #ffffffc7;border-radius:28px;flex-direction:column;height:auto;min-height:0;display:flex;overflow:hidden;box-shadow:0 16px 44px #173f361a,inset 0 1px #fffc}.ios-cal-nav{background:0 0;border-bottom:0;justify-content:space-between;align-items:flex-start;gap:10px;min-height:58px;padding:14px 14px 10px;display:flex}.ios-glass-cal-nav strong{letter-spacing:-.04em;color:var(--text);font-size:20px;line-height:1.08;display:block}.ios-glass-cal-nav small{color:var(--text-3);margin-top:3px;font-size:12px;font-weight:750;display:block}.ios-back{appearance:none;color:var(--ios-red);-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:3px;padding:5px 8px 5px 2px;font-family:inherit;font-size:15.5px;font-weight:500;display:flex}.ios-back .chev{margin-top:-2px;font-size:24px;font-weight:400;line-height:1}.ios-nav-year{letter-spacing:-.2px;color:var(--text-3);font-size:12px;font-weight:900;display:block}.ios-nav-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.ios-text-btn{appearance:none;min-height:34px;color:var(--accent);-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #1848401f;border-radius:13px;padding:0 11px;font-family:inherit;font-size:13px;font-weight:950}.ios-icon-btn{appearance:none;width:34px;height:34px;color:var(--accent);-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #1848401f;border-radius:13px;padding:0;font-family:inherit;font-size:20px;font-weight:950;line-height:1}.ios-weekday-row{text-align:center;color:var(--text-2);text-transform:uppercase;background:#ffffff6b;border-top:1px solid #1848401a;border-bottom:1px solid #1848401a;grid-template-columns:repeat(7,1fr);padding:8px 8px 9px;font-size:11px;font-weight:850;display:grid}.ios-month-scroll{-webkit-overflow-scrolling:touch;flex:none;min-height:0;max-height:min(620px,100dvh - 210px);padding:0 8px 12px;position:relative;overflow-y:auto}.ios-month{padding:12px 0 6px}.ios-month>h3{letter-spacing:-.45px;padding:0 6px 10px;font-size:19px;font-weight:800}.ios-month>h3.now{color:var(--ios-red)}.ios-month-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.ios-day,.ios-day-blank{background:0 0;border:1px solid #0000;border-radius:16px;min-height:48px}.ios-day{color:var(--text);touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding-top:2px;font-family:inherit;display:flex}.ios-day.weekend-day{background:var(--weekend-red-soft);color:var(--weekend-red)}.ios-day strong{border-radius:50%;place-items:center;width:30px;height:30px;font-size:15.5px;font-weight:500;display:grid}.ios-day.today strong{background:var(--ios-red);color:#fff;font-weight:650}.ios-day.sel strong{background:var(--text);color:var(--surface);font-weight:600}.ios-day.sel.today strong{background:var(--ios-red);color:#fff}.ios-day .evdot{background:#c7c7cc;border-radius:50%;width:6px;height:6px}.ios-day .evdot.none{background:0 0}.ios-week-strip{border-bottom:1px solid #1848401a;grid-template-columns:repeat(7,1fr);gap:6px;margin:0;padding:8px 8px 10px;display:grid}.ios-strip-day{appearance:none;color:var(--text);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#ffffff9e;border:1px solid #1848401a;border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:5px 0 4px;font-family:inherit;display:flex}.ios-strip-day.weekend-day{background:var(--weekend-red-soft);color:var(--weekend-red)}.ios-strip-day span{color:var(--text-2);font-size:10.5px;font-weight:650}.ios-strip-day strong{border-radius:50%;place-items:center;width:31px;height:31px;font-size:15.5px;font-weight:500;display:grid}.ios-strip-day.today strong{color:var(--ios-red);font-weight:650}.ios-strip-day.today span{color:var(--ios-red)}.ios-strip-day.selected{background:#fff;border-color:#20605838;box-shadow:0 8px 22px #173f361a}.ios-strip-day.selected strong{background:var(--text);color:var(--surface);font-weight:700}.ios-strip-day.selected.today strong{background:var(--ios-red);color:#fff}.ios-strip-day i{background:#c7c7cc;border-radius:50%;width:4px;height:4px}.ios-day-cal{border-left:0;border-right:0;border-radius:0;gap:0;padding:10px 0 12px}.ios-day-focus-head{grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:8px;padding:0 0 10px;display:grid}.ios-day-focus-head button{height:38px;color:var(--accent);background:#fff;border:1px solid #1848401f;border-radius:999px;font-family:inherit;font-weight:950}.ios-day-focus-head div,.ios-date-title{text-align:center;min-width:0}.ios-day-focus-head strong,.ios-day-focus-head small,.ios-date-title strong,.ios-date-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ios-day-focus-head strong{letter-spacing:-.03em;font-size:18px}.ios-day-focus-head small{color:var(--text-3);margin-top:2px;font-size:12px;font-weight:800}.ios-day-task-list{margin:0 0 10px;padding:0}.ios-day-task-list .calendar-task-chip{text-overflow:ellipsis;background:#ffffffd6;border-radius:18px;padding:12px 14px;overflow:hidden;box-shadow:0 12px 26px #173f361a}.ios-timeline,.ios-glass-timeline{-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;background:#ffffff94;border:1px solid #ffffffbf;border-radius:22px;flex:none;height:672px;min-height:0;overflow:hidden auto}.ios-timeline::-webkit-scrollbar{width:8px}.ios-timeline::-webkit-scrollbar-track{background:0 0}.ios-timeline::-webkit-scrollbar-thumb{background:#1c201e61;border-radius:999px}.ios-timeline-body{height:672px;margin:0;position:relative}.ios-event-lane-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;height:672px;position:absolute;top:0;left:64px;right:0;overflow:auto hidden}.ios-event-lane-scroll::-webkit-scrollbar{display:none}.ios-event-lane-inner{min-width:100%;height:672px;position:relative}.ios-hour{background:0 0;border:0;border-top:1px solid #18484014;height:56px;font-family:inherit;position:absolute;left:64px;right:0}.ios-hour span{text-align:right;width:46px;color:var(--text-3);font-size:11px;font-weight:850;position:absolute;top:-8px;left:-54px}.ios-hour:first-child span{top:6px}.ios-event{appearance:none;border:2px solid color-mix(in srgb, var(--worker-color,var(--accent)) 48%, #111);border-left:4px solid var(--worker-color,var(--accent));text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:var(--worker-color,var(--accent-text));background:linear-gradient(180deg, #fffffff0, color-mix(in srgb, var(--worker-bg,var(--accent-soft)) 72%, #fff));border-radius:18px;padding:10px 34px 9px 12px;font-family:inherit;display:block;position:absolute;overflow:hidden;box-shadow:0 14px 28px #173f3629}.ios-event.mobile-long-press-event{touch-action:none}.ios-event-avatar{color:#fff;background:var(--worker-color,var(--accent));border-radius:999px;place-items:center;width:24px;height:24px;font-size:9px;font-style:normal;font-weight:950;display:grid;position:absolute;top:10px;right:10px}.ios-event strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:950;line-height:1.15;display:block;overflow:hidden}.ios-event span,.ios-event small{opacity:.86;white-space:nowrap;text-overflow:ellipsis;color:var(--text-2);margin-top:2px;font-size:11px;font-weight:850;line-height:1.25;display:block;overflow:hidden}.ios-now{border-top:2px solid var(--ios-red);z-index:5;pointer-events:none;position:absolute;left:64px;right:10px}.ios-now i{background:var(--ios-red);border-radius:50%;width:12px;height:12px;position:absolute;top:-7px;left:-3px}.ios-now span{text-align:right;width:44px;color:var(--ios-red);background:var(--surface);font-size:11px;font-weight:750;position:absolute;top:-9px;left:-54px}.timeline-empty{position:absolute;top:18px;left:72px;right:12px}.calendar-popover.bottom-sheet{background:var(--popup-surface);border:1px solid var(--border-strong);border-radius:28px;width:auto;bottom:10px;left:10px;right:10px;box-shadow:0 -18px 60px #173f3638}.booking-sheet-footer{flex-direction:column;align-items:stretch}.booking-sheet-footer .spacer{display:none}.booking-sheet-footer .btn{width:100%}.sheet-grabber{background:#c7c7cc;border-radius:3px;width:36px;height:5px;margin:0 auto 8px;display:block}}.work-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.work-assignment-section{min-width:0}.work-assignment-list{gap:10px;display:grid}.work-assignment-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);justify-content:space-between;gap:12px;padding:12px;display:flex}.work-assignment-card.completed{background:var(--surface-2);opacity:.82}.work-assignment-card.cancelled{opacity:.58}.work-assignment-main{flex:1;min-width:0}.work-assignment-title-row{align-items:center;gap:8px;min-width:0;display:flex}.work-assignment-title-row strong{overflow-wrap:anywhere}.work-assignment-main p{color:var(--text-2);margin-top:6px;font-size:13px}.work-assignment-meta{color:var(--text-3);flex-wrap:wrap;gap:6px;margin-top:8px;font-size:12px;display:flex}.work-assignment-meta span{background:var(--surface-2);border-radius:999px;padding:2px 7px}.work-assignee-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.assignee-chip{color:var(--text-2);background:var(--worker-bg,var(--accent-soft));border-radius:999px;align-items:center;gap:5px;padding:3px 8px 3px 4px;font-size:12px;display:inline-flex}.assignee-chip i{background:var(--worker-color,var(--accent));color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;font-weight:700;line-height:1;display:grid}.work-assignment-actions{flex-direction:column;flex-shrink:0;justify-content:flex-start;align-items:flex-end;gap:6px;display:flex}.work-assignment-stats{margin-bottom:16px}.work-assignment-sheet{max-width:760px}.calendar-task-list{gap:6px;margin:8px 0 12px;display:grid}.calendar-task-chip{border:1px solid var(--border);border-left:4px solid var(--amber);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);text-align:left;padding:7px 9px;font-size:12.5px;display:block}.calendar-task-chip.completed{border-left-color:var(--green);color:var(--text-3);background:var(--surface-2);text-decoration:line-through}.month-event.task-event{border-left-color:var(--amber);background:var(--amber-soft);color:#7a4d05}@media (max-width:900px){.work-assignment-grid{grid-template-columns:1fr}.work-assignment-card{flex-direction:column}.work-assignment-actions{flex-flow:wrap;align-items:center}}@media (max-width:760px){.mobile-menu-panel .avatar.indigo{color:#fff;background:#ffffff2e}.mobile-menu-panel .mobile-menu-head,.mobile-menu-panel .mobile-menu-account{border-color:#ffffff2e}.mobile-menu-panel .mobile-menu-head span,.mobile-menu-panel .mobile-menu-account span{color:#ffffffb8}.mobile-menu-panel .mobile-menu-item,.mobile-menu-panel .mobile-menu-subitem{color:#ffffffe0}.mobile-menu-panel .mobile-menu-item.active,.mobile-menu-panel .mobile-menu-subitem.active,.mobile-menu-panel .mobile-menu-subitem:hover{color:#fff;background:linear-gradient(135deg,#ffffff47,#ffffff29);box-shadow:inset 4px 0 #6ccdb2d9}}.pwa-toast,.pwa-update-banner{z-index:1000;max-width:min(520px,100vw - 24px);position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 32px #0f172a38}.pwa-toast{bottom:calc(16px + env(safe-area-inset-bottom));color:#fff;background:#1c1c1e;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:560;display:flex}.pwa-toast-dot{background:#d98a0b;border-radius:50%;flex:none;width:8px;height:8px}.pwa-update-banner{bottom:calc(16px + env(safe-area-inset-bottom));border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.pwa-update-banner strong,.pwa-update-banner span{display:block}.pwa-update-banner strong{font-size:14px}.pwa-update-banner span{color:var(--text-2);margin-top:2px;font-size:12.5px}.pwa-update-banner button{background:var(--accent);color:#fff;font:inherit;white-space:nowrap;border:0;border-radius:999px;padding:9px 12px;font-size:13px;font-weight:650}.pwa-update-banner button:disabled{opacity:.65}@media (max-width:520px){.pwa-update-banner{flex-direction:column;align-items:stretch}.pwa-update-banner button{width:100%}}.draggable-event.can-drag{cursor:grab;touch-action:none}.draggable-event.can-drag:active,.draggable-event.dragging{cursor:grabbing;z-index:20;opacity:.88;box-shadow:0 12px 28px #0f172a2e}.draggable-event.read-only{cursor:pointer}.desktop-day-calendar.desktop-inactive{display:none}.desktop-day-calendar.desktop-active{display:block}.desktop-day-scroll .time-day{min-width:0}.day-mode-head button{border-left:1px solid var(--border)}@media (max-width:760px){.desktop-day-calendar,.desktop-day-calendar.desktop-active{display:none}}.time-col div:first-child{padding-top:2px;transform:none}.desktop-day-scroll{overflow-x:hidden}.desktop-day-scroll .time-grid,.desktop-day-scroll .day-mode-grid{width:100%;min-width:0}.desktop-day-scroll .event-block{right:0}.mac-calendar-shell .event-block{max-width:100%}.boendebild-preview{color:#17201c;-webkit-print-color-adjust:exact;print-color-adjust:exact;justify-items:center;gap:20px;margin:0 auto;display:grid}.boendebild-preview-toolbar,.boendebild-warning-banner{background:#ffffffe6;border:1px solid #17201c1f;border-radius:18px;width:min(210mm,100vw - 32px);box-shadow:0 14px 34px #17201c14}.boendebild-preview-toolbar{justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.boendebild-toolbar-kicker,.boendebild-kicker,.boendebild-room-label,.boendebild-meta-label{text-transform:uppercase;letter-spacing:.18em;color:#64736d;font-size:11px;font-weight:700}.boendebild-warning-banner{background:linear-gradient(#fff8ea,#fffdf7);padding:16px 18px}.boendebild-warning-banner ul,.boendebild-condition-list{margin:10px 0 0 18px}.boendebild-page{color:#17201c;page-break-after:always;break-after:page;background:#fff;border-radius:8px;width:210mm;min-height:297mm;padding:18mm;box-shadow:0 24px 64px #17201c1f}.boendebild-page:last-child{page-break-after:auto;break-after:auto}.boendebild-hero,.boendebild-conditions-panel,.boendebild-room-header,.boendebild-finding-topline{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.boendebild-hero h1,.boendebild-section-heading h2{letter-spacing:-.03em}.boendebild-hero h1{margin:8px 0 10px;font-size:36px}.boendebild-hero-summary,.boendebild-room-summary,.boendebild-room-intro,.boendebild-section-heading p,.boendebild-finding-description,.boendebild-summary-panel p,.boendebild-conditions-panel p,.boendebild-meta-card p,.boendebild-photo-card figcaption,.boendebild-recommendation-box p{color:#485752;line-height:1.6}.boendebild-brand-mark{color:#fff;background:linear-gradient(135deg,#204f48,#2d756b);border-radius:22px;flex-shrink:0;place-items:center;width:72px;height:72px;font-size:30px;font-weight:800;display:grid}.boendebild-meta-grid,.boendebild-photo-grid{gap:14px;display:grid}.boendebild-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}.boendebild-meta-card,.boendebild-summary-panel,.boendebild-conditions-panel,.boendebild-room-section,.boendebild-photo-card,.boendebild-recommendation-box{background:#fff;border:1px solid #17201c1f;border-radius:20px}.boendebild-meta-card,.boendebild-summary-panel,.boendebild-room-section,.boendebild-photo-card{padding:16px}.boendebild-summary-panel,.boendebild-conditions-panel,.boendebild-section-stack,.boendebild-photo-page .boendebild-photo-grid{margin-top:22px}.boendebild-summary-panel{background:linear-gradient(#eef4f1,#fbfcfb)}.boendebild-summary-panel h2,.boendebild-conditions-panel h2,.boendebild-photo-page h2{margin-bottom:8px;font-size:24px}.boendebild-conditions-panel{grid-template-columns:1.3fr .9fr;gap:18px;padding:18px;display:grid}.boendebild-section-heading p{max-width:72ch}.boendebild-section-stack{gap:18px;display:grid}.boendebild-room-section{break-inside:avoid;page-break-inside:avoid}.boendebild-room-header h3{margin-top:4px;font-size:24px}.boendebild-room-summary{text-align:right;max-width:260px}.boendebild-findings-list{gap:14px;margin-top:16px;display:grid}.boendebild-finding{break-inside:avoid;page-break-inside:avoid;border-top:1px solid #17201c1a;padding-top:14px}.boendebild-finding:first-child{border-top:0;padding-top:0}.boendebild-finding h4{margin-top:2px;font-size:20px}.boendebild-finding-room{color:#64736d;font-size:12px;font-weight:700}.boendebild-severity-pill{border-radius:999px;justify-content:center;align-items:center;min-width:88px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.boendebild-severity-action{color:#a2471d;background:#fff0ea}.boendebild-severity-observe{color:#946000;background:#fff7dd}.boendebild-severity-info{color:#285a52;background:#edf4f1}.boendebild-recommendation-box{background:#f7faf8;margin-top:12px;padding:14px}.boendebild-recommendation-box span,.boendebild-source-grid dt{color:#64736d;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.boendebild-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.boendebild-source-grid dd{margin:0}.boendebild-finding-photos,.boendebild-photo-grid{margin-top:14px}.boendebild-finding-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.boendebild-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.boendebild-photo-card{break-inside:avoid;page-break-inside:avoid;overflow:hidden}.boendebild-photo-frame{aspect-ratio:4/3;background:linear-gradient(135deg,#e8efec,#f9fbfa);border-radius:14px;place-items:center;display:grid;overflow:hidden}.boendebild-photo-frame-large{aspect-ratio:16/10}.boendebild-photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.boendebild-photo-placeholder{text-align:center;color:#6f7f78;padding:18px;font-size:13px}.boendebild-photo-card figcaption{gap:4px;padding-top:10px;display:grid}.boendebild-photo-card figcaption span{color:#6f7f78;font-size:12px}@page{size:A4;margin:0}@media (max-width:960px){.boendebild-preview-toolbar,.boendebild-warning-banner,.boendebild-page{width:min(100%,210mm)}.boendebild-page{min-height:auto;padding:24px}.boendebild-meta-grid,.boendebild-conditions-panel,.boendebild-finding-photos,.boendebild-photo-grid,.boendebild-source-grid{grid-template-columns:minmax(0,1fr)}.boendebild-hero,.boendebild-room-header,.boendebild-finding-topline,.boendebild-preview-toolbar{flex-direction:column}.boendebild-room-summary{text-align:left;max-width:none}}@media print{html,body{background:#fff}.no-print{display:none!important}.boendebild-preview{margin:0;display:block}.boendebild-page{box-shadow:none;border-radius:0;margin:0}}
