html{scrollbar-gutter:stable both-edges}:root{font-family:SF Pro Text,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1d1d1f;--ios-bg: #f2f2f7;--ios-surface: rgba(255, 255, 255, .76);--ios-surface-strong: rgba(255, 255, 255, .92);--ios-border: rgba(60, 60, 67, .16);--ios-text: #1d1d1f;--ios-text-secondary: rgba(60, 60, 67, .82);--ios-accent: #0a84ff;--ios-accent-pressed: #0071e3;--ios-danger: #ff453a;--ios-shadow: 0 8px 24px rgba(15, 23, 42, .08);--ios-shadow-soft: 0 4px 14px rgba(15, 23, 42, .06)}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ios-text);background:radial-gradient(circle at 12% 10%,rgba(120,197,255,.28) 0%,transparent 38%),radial-gradient(circle at 85% 0%,rgba(179,156,255,.2) 0%,transparent 34%),linear-gradient(180deg,#fbfbfd 0%,var(--ios-bg) 100%)}h1,h2,h3,h4,h5,h6{margin:.3rem .9rem;color:var(--ios-text)}body.timeline-no-select,body.timeline-no-select *{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}body,body *{user-select:none;-webkit-user-select:none}input,textarea,[contenteditable=true]{user-select:text;-webkit-user-select:text}.container{max-width:1400px;margin:0 auto;padding:1rem 1rem 3rem}.subtitle{margin-top:-.5rem;color:var(--ios-text-secondary)}.tabs{display:flex;gap:.3rem;margin-bottom:.2rem;margin-left:12px;margin-right:12px}.tab{border-radius:33px;border:1px solid var(--ios-border);background:var(--ios-surface);color:var(--ios-text-secondary)}.tab.active{background:var(--ios-accent);color:#fff;border-color:var(--ios-accent)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.card{background:var(--ios-surface);border:1px solid var(--ios-border);border-radius:18px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);box-shadow:var(--ios-shadow-soft)}.ui-icon{display:block;width:1em;height:1em;pointer-events:none;flex:0 0 auto}.ghost-btn{background:var(--ios-surface-strong);color:var(--ios-text-secondary);border:1px solid var(--ios-border);box-shadow:none}.icon-btn{min-width:30px;width:30px;height:30px;padding:0;border-radius:999px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;position:relative}.icon-btn:hover{background:#0a84ff1f}.icon-btn.active{background:var(--ios-accent);color:#fff;border-color:var(--ios-accent)}body:not(.tooltip-portal-enabled) button[data-tooltip]{position:relative}body:not(.tooltip-portal-enabled) button[data-tooltip]:after,body:not(.tooltip-portal-enabled) .icon-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:50%;top:calc(100% + 7px);transform:translate(-50%,-4px);opacity:0;pointer-events:none;background:#18181cf5;color:#fff;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:.22rem .4rem;font-size:.68rem;line-height:1.2;white-space:normal;text-align:center;max-width:min(260px,80vw);word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;z-index:9999;transition:opacity .15s ease,transform .15s ease}body:not(.tooltip-portal-enabled) button[data-tooltip]:hover:after,body:not(.tooltip-portal-enabled) button[data-tooltip]:focus-visible:after,body:not(.tooltip-portal-enabled) .icon-btn[data-tooltip]:hover:after,body:not(.tooltip-portal-enabled) .icon-btn[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%);transition-delay:.14s}.project-space-grid{display:grid;grid-template-columns:repeat(auto-fill,260px);justify-content:flex-start;gap:.35rem}.project-space-card{border:1px solid var(--ios-border);border-radius:12px;background:var(--ios-surface-strong);padding:.65rem;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:.3rem;width:260px;height:200px}.project-space-card:hover{background:#0a84ff14}.project-space-card-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;font-size:14px;font-weight:100}.project-space-card-topline strong{overflow-wrap:anywhere}.project-space-card-actions{display:inline-flex;align-items:center;gap:.3rem}.project-space-card-stats{display:inline-flex;align-items:center;gap:.35rem}.project-space-card-stat{position:relative;display:inline-flex;align-items:center;gap:.25rem;border:1px solid var(--ios-border);border-radius:999px;background:#78788014;color:var(--ios-text-secondary);font-size:.72rem;padding:.1rem .34rem}.project-space-mini-load{margin-top:.15rem;display:flex;align-items:flex-end;gap:2px;height:28px;border:1px solid var(--ios-border);border-radius:8px;background:#0a84ff14;padding:2px}.project-space-mini-load-bar{flex:1 1 0;min-width:2px;border-radius:2px;background:linear-gradient(180deg,#42a5ff 0%,var(--ios-accent) 100%)}.project-space-mini-load-bar.overloaded{background:linear-gradient(180deg,#ff7b72 0%,var(--ios-danger) 100%)}body:not(.tooltip-portal-enabled) .project-space-card-stat[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 7px);transform:translate(-50%,4px);opacity:0;pointer-events:none;background:#18181cf5;color:#fff;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:.22rem .4rem;font-size:.68rem;line-height:1.2;white-space:normal;text-align:center;max-width:min(260px,80vw);word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;z-index:9999;transition:opacity .15s ease,transform .15s ease}body:not(.tooltip-portal-enabled) .project-space-card-stat[data-tooltip]:hover:after,body:not(.tooltip-portal-enabled) .project-space-card-stat[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%);transition-delay:.14s}.project-space-card-create{align-items:center;justify-content:center;border-style:dashed;position:relative}body:not(.tooltip-portal-enabled) .project-space-card-create[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 7px);transform:translate(-50%,4px);opacity:0;pointer-events:none;background:#18181cf5;color:#fff;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:.22rem .4rem;font-size:.68rem;line-height:1.2;white-space:normal;text-align:center;max-width:min(260px,80vw);word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;z-index:9999;transition:opacity .15s ease,transform .15s ease}body:not(.tooltip-portal-enabled) .project-space-card-create[data-tooltip]:hover:after,body:not(.tooltip-portal-enabled) .project-space-card-create[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%);transition-delay:.14s}.project-space-card-create-plus{width:40px;height:40px;border-radius:999px;border:1px solid var(--ios-border);display:inline-flex;align-items:center;justify-content:center;color:var(--ios-text-secondary)}.danger-btn{background:#ff453a29;border-color:#ff453a4d;color:#a01914;box-shadow:none}.danger-btn:hover{background:#ff453a38}.project-member-actions{display:inline-flex;align-items:center;gap:.35rem}.project-member-actions select{min-width:180px}.instruction-list,.project-settings-body ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.instruction-list>li,.project-settings-body ul>li{display:flex;justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid var(--ios-border)}.instruction-list>li span,.project-settings-body ul>li span{font-size:.9rem;color:var(--ios-text-secondary)}.instruction-list>li div,.project-settings-body ul>li div{display:flex;flex-direction:column;gap:.15rem}.instruction-list>li:last-child,.project-settings-body ul>li:last-child{border-bottom:0;padding-bottom:0}.muted{color:var(--ios-text-secondary)}.error{color:var(--ios-danger);margin:0}.global-error{margin-top:1rem}.toast-stack{position:fixed;left:50%;transform:translate(-50%);bottom:1rem;z-index:120;display:grid;gap:.4rem;justify-items:center}.toast-item{background:#1d1d1fdb;color:#fff;border-radius:12px;padding:.65rem .75rem;min-width:260px;max-width:520px;font-size:.88rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.95rem}input,select,textarea{border:1px solid var(--ios-border);border-radius:12px;padding:.2rem;background:var(--ios-surface-strong);color:var(--ios-text)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2360666F' d='M1.41.59 6 5.17 10.59.59 12 2 6 8 0 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:12px 8px}input:focus,select:focus,textarea:focus{outline:none;border-color:#0a84ff8c;box-shadow:0 0 0 3px #0a84ff29}input[readonly],textarea[readonly]{background:#78788024;color:#3c3c43eb;border-color:#3c3c433d;cursor:not-allowed}input[readonly]:focus,textarea[readonly]:focus{box-shadow:none;border-color:#3c3c433d}textarea{resize:vertical;font-family:IBM Plex Mono,Consolas,monospace}button{border:1px solid transparent;border-radius:12px;padding:.65rem .9rem;background:var(--ios-accent);color:#fff;cursor:pointer;font-weight:600;box-shadow:none;transition:background-color .18s ease,transform .18s ease}button:hover:not(:disabled):not([aria-disabled=true]){background:var(--ios-accent-pressed)}button:active:not(:disabled):not([aria-disabled=true]){transform:scale(.97)}button[aria-disabled=true]{opacity:.45;cursor:default}.section-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem;min-height:48px}@media(max-width:680px){.section-header{align-items:flex-start;flex-direction:column;gap:.42rem}}.lang-toggle{display:inline-flex;gap:.35rem}.lang-select-wrap{display:inline-flex;align-items:center}.lang-select{min-width:74px;height:32px;border-radius:999px;padding:0 1.9rem 0 .75rem;font-weight:600}.header-controls{display:inline-flex;align-items:center;gap:.45rem}@media(max-width:680px){.header-controls{width:100%;flex-wrap:wrap;justify-content:flex-start;gap:.36rem}}.header-btn{min-height:38px}.header-icon-btn{min-width:38px;width:38px;height:38px;padding:0;border-radius:999px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center}.header-project-tab{min-width:180px;max-width:320px;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:680px){.header-project-tab{min-width:0;max-width:none;width:100%;justify-content:flex-start}}.project-top-panel{display:inline-flex;align-items:center;gap:.65rem;min-height:40px}@media(max-width:680px){.project-top-panel{width:100%;align-items:flex-start;flex-direction:column;gap:.4rem}}.section-header .header-icon-btn .ui-icon{width:1.2em;height:1.2em}.project-top-main{display:inline-flex;align-items:center;gap:.45rem}@media(max-width:680px){.project-top-main{width:100%}}.project-top-main h1,.project-top-main h3{margin:0}.project-top-actions{display:inline-flex;align-items:center;gap:.35rem}@media(max-width:680px){.project-top-actions{width:100%;justify-content:flex-start}}.ai-assistant-panel{margin-top:.55rem;border:1px solid var(--ios-border);border-radius:12px;background:var(--ios-surface);padding:.65rem;display:grid;gap:.5rem}.ai-assistant-header{font-weight:700}.ai-assistant-controls{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.magic-wand-btn{border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary)}.magic-wand-btn:hover{background:var(--ios-surface)}.magic-wand-btn.is-loading .ui-icon{animation:ai-wand-spin .9s linear infinite}@keyframes ai-wand-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-assistant-file{font-size:.9rem;color:var(--ios-text-secondary)}.ai-assistant-status{font-size:.86rem;color:var(--ios-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(60vw,560px)}.ai-assistant-download-btn{min-height:30px;padding:0 .6rem;font-size:.82rem}.ai-assistant-row{display:grid;grid-template-columns:1fr auto;gap:.45rem}.ai-assistant-row input{width:100%;min-height:36px;border:1px solid var(--ios-border);border-radius:10px;background:var(--ios-surface-strong);color:var(--ios-text);padding:0 .7rem}.ai-assistant-answer{margin:0;white-space:pre-wrap;font-family:inherit;font-size:.92rem;line-height:1.45;color:var(--ios-text);background:var(--ios-surface-strong);border:1px solid var(--ios-border);border-radius:10px;padding:.6rem}.role-filter-panel{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.role-tag{background:#78788047;color:var(--ios-text-secondary);border:1px solid var(--ios-border);padding:.4rem .55rem;font-size:.82rem;border-radius:999px;max-width:180px}.role-tag.active{font-weight:700}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.35rem}.employee-row{align-items:flex-start}.department-filter-row{display:flex;align-items:center;gap:.45rem;margin-bottom:.4rem}.team-actions{display:flex;gap:.4rem}.team-icon-btn{min-width:30px;height:30px;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.filter-clear-icon-btn{min-width:28px;width:28px;height:28px;padding:0;border-radius:999px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-size:.9rem}.filter-clear-icon-btn:hover{background:#0a84ff1f}.employee-cards{display:flex;flex-wrap:wrap;gap:.55rem}.employee-card{width:min(100%,264px);border:1px solid var(--ios-border);border-radius:14px;padding:.58rem;display:grid;gap:.26rem;background:var(--ios-surface-strong);box-shadow:var(--ios-shadow-soft)}.employee-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.employee-card-actions{display:inline-flex;gap:.3rem}.role-badge{border-radius:999px;padding:.1rem .5rem;font-size:.78rem;font-weight:700}.grade-badge{border-radius:999px;padding:.08rem .46rem;font-size:.76rem;font-weight:700;margin-left:.24rem}.salary-line,.vacation-line{color:var(--ios-text-secondary);font-size:.78rem}.utilization-block{margin-top:.12rem;display:grid;gap:.2rem}.monthly-load-label{font-size:.74rem;color:var(--ios-text-secondary)}.utilization-label{display:flex;justify-content:space-between;font-size:.74rem;color:var(--ios-text-secondary)}.utilization-bar-bg{width:100%;height:7px;border-radius:99px;background:#78788029;overflow:hidden}.utilization-bar{height:100%;border-radius:99px}.employee-monthly-load{margin-top:.1rem;height:30px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:2px}.employee-monthly-load-bar{width:100%;min-height:3px;border-radius:2px 2px 0 0;opacity:.92}.role-row{display:grid;grid-template-columns:minmax(0,1fr) 32px 56px 32px;align-items:flex-start;gap:.55rem;padding-bottom:.15rem;border-bottom:0}.roles-header-actions{display:inline-flex;align-items:center;gap:.35rem}.roles-list-header h2{margin:0}.role-table-head{display:grid;grid-template-columns:minmax(150px,2fr) minmax(100px,1fr) minmax(160px,2fr) 32px 56px 32px;gap:.32rem;font-size:.72rem;color:var(--ios-text-secondary);font-weight:600;padding:0 0 .1rem}.roles-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.create-role-icon-btn{min-width:30px;height:30px;border-radius:999px;padding:0;line-height:1;font-size:1rem}.role-fields{display:grid;grid-template-columns:minmax(150px,2fr) minmax(100px,1fr) minmax(160px,2fr);gap:.32rem;width:100%;align-items:end}.role-fields input{padding:.35rem .4rem;min-height:28px}.role-fields input:disabled{background:var(--ios-surface-soft);color:var(--ios-text-secondary);cursor:not-allowed}.role-fields input:disabled::placeholder{color:var(--ios-text-secondary)}.role-usage{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;min-height:28px;color:var(--ios-text-secondary)}.role-color-editor{display:flex;width:32px;flex:0 0 32px;position:relative}.color-picker-popover{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:start;width:240px;position:absolute;right:0;top:calc(100% + .3rem);min-width:240px;padding:.4rem;border:1px solid var(--ios-border);border-radius:12px;background:var(--ios-surface-strong);box-shadow:var(--ios-shadow-soft);z-index:8}.color-hex-input{min-height:34px;padding:.45rem .55rem;text-transform:uppercase;font-family:IBM Plex Mono,Consolas,monospace}.custom-color-sv{position:relative;grid-column:1/-1;height:120px;border-radius:10px;overflow:hidden;border:1px solid var(--ios-border);cursor:crosshair}.custom-color-sv:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#fff,#fff0)}.custom-color-sv:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000,#0000)}.custom-color-sv-pointer{position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000059;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.custom-color-hue{grid-column:1/-1;width:100%;height:12px;border-radius:999px;border:1px solid var(--ios-border);position:relative;cursor:ew-resize;background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.custom-color-hue-pointer{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:#1d1d1f;box-shadow:0 0 0 1px #3c3c4373;pointer-events:none}.color-picker-dropdown{position:relative}.color-picker-trigger{cursor:pointer;min-width:32px;width:32px;height:32px;padding:.2rem;border-radius:12px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;color:inherit}.color-picker-trigger:disabled{opacity:.55;cursor:not-allowed}.department-manage-action:disabled{opacity:.45;cursor:not-allowed}.template-manage-create{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:start}.template-manage-create .department-manage-input,.template-manage-create .template-role-chips{grid-column:1/2}.template-create-btn{grid-column:2/3;grid-row:1/3;align-self:stretch}.template-manage-list{gap:.38rem}.template-manage-card{display:grid;gap:.28rem;padding:.38rem;border:1px solid var(--ios-border);border-radius:10px;background:var(--ios-surface-soft);min-width:0;overflow-x:hidden}.template-manage-header{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:center;min-width:0}.template-manage-header .department-manage-input{min-width:0}.template-role-chips{display:flex;flex-wrap:wrap;gap:.24rem;min-width:0}.template-role-chip{min-height:22px;padding:.08rem .42rem;border-radius:999px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);font-size:.67rem;font-weight:600;line-height:1;box-shadow:none}.template-role-chip.active{background:#0a84ff29;border-color:#0a84ff80;color:var(--ios-text-primary)}.color-picker-trigger-swatch{width:100%;height:100%;border-radius:8px;border:1px solid var(--ios-border)}.timeline-layout{display:grid;grid-template-columns:1fr;gap:1rem}.timeline-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem}@media(max-width:680px){.timeline-toolbar{align-items:flex-start;flex-direction:column;gap:.45rem}}.timeline-toolbar-title-group{display:flex;align-items:center;gap:.8rem}@media(max-width:680px){.timeline-toolbar-title-group{width:100%;flex-wrap:wrap;gap:.42rem}}.timeline-step-switch{display:inline-flex;align-items:center;gap:.35rem}@media(max-width:680px){.timeline-step-switch{flex-wrap:wrap}}.timeline-step-switch .tab{padding:.35rem .55rem;min-width:38px}.timeline-calendar-checkbox{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--ios-text-secondary)}.timeline-calendar-checkbox input{margin:0}.timeline-step-label{font-size:.78rem;color:var(--ios-text-secondary);margin-right:.2rem}@media(max-width:680px){.timeline-step-label{width:100%;margin-right:0}}.timeline-calendar-legend{display:inline-flex;align-items:center;gap:.55rem;margin:.05rem 0 .45rem;font-size:.74rem;color:var(--ios-text-secondary)}@media(max-width:680px){.timeline-calendar-legend{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.3rem}}.timeline-calendar-legend-title{font-weight:600}.timeline-calendar-legend-item{display:inline-flex;align-items:center;gap:.3rem}.timeline-calendar-health{margin-left:.4rem}.timeline-calendar-swatch{width:12px;height:12px;border-radius:4px;border:1px solid var(--ios-border)}.timeline-calendar-swatch.working{background:#0a84ff14}.timeline-calendar-swatch.weekend{background:#7878800f}.timeline-calendar-swatch.holiday{background:#ff453a1f}.timeline-calendar-swatch.vacation{background:#ff453abf}.year-switcher{display:inline-flex;align-items:center;gap:.35rem}@media(max-width:680px){.year-switcher{width:100%;justify-content:flex-start}}.timeline-toolbar-icon-btn,.timeline-meta-icon-btn{min-width:30px;width:30px;height:30px;padding:0;border-radius:999px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;line-height:1}.timeline-toolbar-icon-btn:hover,.timeline-meta-icon-btn:hover{background:#0a84ff1f}.month-grid{position:relative;display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));gap:0;font-size:.75rem;color:var(--ios-text-secondary);font-weight:600;padding:.05rem 0}.day-grid{position:relative;height:20px;border-top:1px solid var(--ios-border);border-bottom:1px solid var(--ios-border);margin-bottom:.2rem;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-step) - 1px),rgba(60,60,67,.28) calc(var(--day-step) - 1px),rgba(60,60,67,.28) var(--day-step));box-shadow:inset 1px 0 #3c3c4347,inset -1px 0 #3c3c4347}.day-grid .calendar-day-segment{z-index:0}.day-marker{position:absolute;top:2px;transform:translate(-50%);font-size:.65rem;color:var(--ios-text-secondary)}.company-load-card{position:sticky;top:0;z-index:5;border:1px solid var(--ios-border);border-radius:14px;background:var(--ios-surface-strong);padding:.4rem .5rem;box-shadow:var(--ios-shadow-soft)}.company-load-card h3{margin:0}.company-load-card .month-grid{margin-top:.2rem;padding-top:.1rem}.company-load-card .day-grid{margin-top:.15rem;margin-bottom:.05rem}.company-load-chart{position:relative;display:flex;align-items:end;gap:1px;height:82px;border:1px solid var(--ios-border);border-radius:12px;background:linear-gradient(180deg,#0a84ff1a,#0a84ff05);overflow:hidden}.company-load-grid-line{position:absolute;left:0;right:0;border-top:1px dashed rgba(60,60,67,.34);z-index:1}.company-load-grid-line-limit{border-top-color:var(--ios-danger)}.company-load-bar{flex:1 1 0;min-width:1px;background:linear-gradient(180deg,#42a5ff 0%,var(--ios-accent) 100%);border-radius:2px 2px 0 0;opacity:.9;position:relative;z-index:3}.company-load-bar.positioned{position:absolute;bottom:0;min-width:0}.company-load-bar.overloaded{background:linear-gradient(180deg,#ff7b72 0%,var(--ios-danger) 100%)}.company-load-chart .company-chart-overlay{z-index:4}.company-load-chart .company-chart-overlay.weekend{background:#e8e9ee}.company-load-chart .company-chart-overlay.holiday{background:#f7dddd}.calendar-day-segment{position:absolute;top:0;bottom:0;pointer-events:none;z-index:0}.calendar-day-segment.weekend{background:#7878800f}.calendar-day-segment.holiday{background:#ff453a1f}.timeline-rows{display:flex;flex-direction:column;gap:.5rem}.timeline-year-row{width:100%}.timeline-board{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:1.1rem}@media(max-width:900px){.timeline-board{grid-template-columns:1fr}}.timeline-main{min-width:0}.timeline-project-item{border:1px solid var(--ios-border);border-radius:16px;background:var(--ios-surface-strong);padding:0;overflow:visible}.timeline-project-item:hover:not(.dimmed):not(.selected){border-color:#0a84ff47;background:#0a84ff0f}.timeline-project-item.selected{border-color:#0a84ff6b;background:#0a84ff1f}.timeline-project-item.selected:hover:not(.dimmed){border-color:#0a84ff8c;background:#0a84ff24}.timeline-project-item.drop-target{border-color:#0a84ff8c;box-shadow:inset 0 0 0 1px #0a84ff33}.timeline-project-item.dimmed{opacity:.32}.bench-column{position:sticky;top:0;align-self:start;z-index:4;border:1px solid var(--ios-border);border-radius:14px;background:var(--ios-surface-strong);padding:.42rem;display:grid;gap:.3rem;align-content:start;max-height:72vh;overflow:auto;margin-left:.4rem}@media(max-width:900px){.bench-column{max-height:none;margin-left:0}}.bench-header{font-size:.74rem;color:var(--ios-text-secondary);font-weight:700;text-transform:uppercase}.bench-header-row{display:flex;align-items:center;justify-content:space-between;gap:.3rem}.bench-filter-clear-btn{width:18px;height:18px;border:1px solid var(--ios-border);border-radius:999px;background:var(--ios-surface);color:var(--ios-text-secondary);font-size:12px;line-height:1;padding:0;display:inline-flex;align-items:center;justify-content:center}.bench-group{display:grid;gap:.22rem}.bench-group-title{margin:0;padding:.18rem .28rem;border:0;background:transparent;text-align:left;font-size:.72rem;color:var(--ios-text-secondary);font-weight:700;width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:.35rem;border-radius:10px;cursor:pointer}.bench-group-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bench-group-selected{width:14px;height:14px;border:1px solid var(--ios-border);border-radius:999px;background:var(--ios-surface);color:var(--ios-text-secondary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.bench-group.selected .bench-group-title{color:var(--ios-text);border:1px solid rgba(10,132,255,.28);background:#0a84ff14}.bench-group.selected .bench-group-selected{border-color:#0a84ff57;color:var(--ios-text)}.bench-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem}@media(max-width:900px){.bench-members{grid-template-columns:1fr}}.bench-member{border:1px solid var(--ios-border);background:var(--ios-surface);color:var(--ios-text);box-shadow:none;border-radius:9px;padding:.26rem .34rem;text-align:left;display:grid;gap:.04rem;min-width:0}.bench-member.active{border-color:#0a84ff80;box-shadow:inset 0 0 0 1px #0a84ff3d;background:#0a84ff14}.bench-member strong{font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bench-member>span{font-size:.62rem;color:var(--ios-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bench-member-head{display:flex;align-items:center;justify-content:space-between;gap:.25rem}.bench-member-load-wrap{display:inline-flex;align-items:center;gap:.22rem;min-width:0}.bench-member-selected{width:16px;height:16px;border:1px solid var(--ios-border);border-radius:999px;background:var(--ios-surface);color:var(--ios-text-secondary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.bench-member-load{font-size:.62rem;color:var(--ios-text-secondary)}.bench-member-meta{display:inline-flex;align-items:center;gap:.25rem}.timeline-row{display:grid;gap:.22rem;border:1px solid transparent;border-radius:10px;background:transparent;text-align:left;padding:.42rem .7rem;cursor:default;color:var(--ios-text);width:100%}.timeline-row.selected{border-color:transparent;background:transparent}.timeline-meta-controls{display:flex;align-items:center;gap:.25rem;padding:.12rem;border:1px solid var(--ios-border);border-radius:999px;background:#ffffffbf}@media(max-width:680px){.timeline-meta-controls{width:100%;justify-content:flex-start;flex-wrap:wrap}}.timeline-template-chip{max-width:170px;padding:.1rem .5rem;border:1px solid var(--ios-border);border-radius:999px;background:#0a84ff1f;color:var(--ios-text-secondary);font-size:.68rem;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-row-toggle{min-width:26px;height:24px;padding:0 .3rem;border-radius:999px;background:transparent;color:var(--ios-text-secondary);border:1px solid transparent;line-height:1}.timeline-row-toggle:hover:not(:disabled){background:#0a84ff1f}.timeline-row-toggle.active{background:#0a84ff2e;border-color:#0a84ff59}.timeline-row-toggle-expand{min-width:20px;width:20px;height:20px;padding:0;border:none;border-radius:0;background:transparent;color:var(--ios-text-secondary)}.timeline-row-toggle-expand:hover:not(:disabled){background:transparent;color:var(--ios-text)}.timeline-row-toggle-expand.active{background:transparent;border-color:transparent;color:var(--ios-text)}.timeline-row-toggle:disabled{opacity:.45;cursor:default}.timeline-meta{display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem}@media(max-width:900px){.timeline-meta{flex-direction:column;gap:.2rem}}.timeline-meta-main{display:flex;flex-direction:column;align-items:flex-start;gap:.28rem;min-width:0;width:100%}.timeline-meta-topline{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem}.timeline-meta-trailing{display:inline-flex;align-items:center;gap:2rem;min-width:0}@media(max-width:680px){.timeline-meta-trailing{width:100%;gap:.45rem;justify-content:space-between;flex-wrap:wrap}}.timeline-error-inline-list{display:inline-flex;align-items:center;gap:.22rem}.timeline-meta-main strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-meta span{color:var(--ios-text-secondary);font-weight:600}.timeline-kpi-row{display:inline-flex;flex-wrap:wrap;gap:.28rem;font-size:.75rem;color:var(--ios-text-secondary);font-weight:500}.timeline-kpi-item{display:inline-flex;align-items:center;position:relative;gap:.24rem;border:1px solid var(--ios-border);border-radius:999px;padding:.08rem .34rem;background:#78788014;max-width:220px;white-space:nowrap;overflow:visible}.timeline-kpi-item .ui-icon{opacity:.85;flex:0 0 auto}.timeline-kpi-item>span:not(.timeline-inline-tooltip){min-width:0;overflow:hidden;text-overflow:ellipsis}.timeline-error-chip{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;border:1px solid rgba(255,69,58,.42);background:#ff453a1f;color:var(--ios-danger);position:relative}.timeline-inline-tooltip-anchor{position:relative;display:inline-flex;align-items:center}.timeline-inline-tooltip{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%,4px);opacity:0;pointer-events:none;background:#18181cf5;color:#fff;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:.24rem .38rem;font-size:.68rem;line-height:1.2;white-space:nowrap;z-index:25;transition:opacity .15s ease,transform .15s ease;user-select:none;-webkit-user-select:none}body.tooltip-portal-enabled .timeline-inline-tooltip{display:none}.timeline-meta .timeline-inline-tooltip{color:#fff!important;font-weight:500}.timeline-inline-tooltip-anchor:hover .timeline-inline-tooltip,.timeline-inline-tooltip-anchor:focus-within .timeline-inline-tooltip,.timeline-kpi-item:hover .timeline-inline-tooltip,.timeline-kpi-item:focus-within .timeline-inline-tooltip,.assignment-kpi-item:hover .timeline-inline-tooltip,.assignment-kpi-item:focus-within .timeline-inline-tooltip,.timeline-error-chip:hover .timeline-inline-tooltip,.timeline-error-chip:focus-within .timeline-inline-tooltip{opacity:1;transform:translate(-50%)}.timeline-meta-actions{display:inline-flex;align-items:center;gap:.35rem;position:relative}.project-fact-tooltip-anchor{position:absolute;top:24px;height:5px;border-radius:999px;z-index:2}.project-fact-tooltip-anchor .project-fact-bar{top:0;height:100%}.project-edit-popover{position:absolute;right:2.1rem;top:calc(100% + .25rem);min-width:470px;border:1px solid var(--ios-border);border-radius:12px;background:var(--ios-surface-strong);box-shadow:var(--ios-shadow-soft);padding:.4rem;z-index:10}@media(max-width:900px){.project-edit-popover{right:0;min-width:0;width:min(100vw - 2rem,520px)}}.project-edit-row{display:grid;grid-template-columns:110px minmax(150px,1fr) 128px 128px minmax(140px,1fr);gap:.35rem}@media(max-width:900px){.project-edit-row{grid-template-columns:1fr}}.project-edit-row input,.project-edit-row select{min-height:32px;padding:.35rem .5rem}.project-edit-actions{margin-top:.4rem;display:flex;justify-content:flex-end}.project-edit-delete-btn{display:inline-flex;align-items:center;gap:.28rem;min-height:32px;padding:.3rem .55rem;border:1px solid rgba(255,69,58,.42);border-radius:8px;background:#ff453a14;color:var(--ios-danger);font-size:.78rem;font-weight:600}.project-edit-delete-btn:hover{background:#ff453a26}.timeline-meta-icon-btn{font-size:.92rem}.timeline-submeta{display:block;font-size:.82rem;color:var(--ios-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:900px){.timeline-submeta{white-space:normal}}.project-card{margin-top:.55rem;border-top:1px solid var(--ios-border);padding:.55rem .7rem .7rem;display:grid;gap:.45rem;background:#fff9;border-radius:0 0 16px 16px;width:100%}.project-card-tools{display:flex;justify-content:flex-end}.assignment-list{display:grid;gap:0}.assignment-item{width:100%;border:none;background:transparent;color:var(--ios-text);border-radius:0;position:relative;overflow:visible;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:.12rem .4rem}.assignment-item.highlighted{background:#0a84ff12}.assignment-item.muted{opacity:.5}.track{position:relative;width:100%;min-height:20px;height:24px;border-radius:12px;background:repeating-linear-gradient(90deg,#3c3c4317,#3c3c4317 calc(8.3333333333% - 1px),#3c3c4329 calc(8.3333333333% - 1px),#3c3c4329 8.3333333333%);overflow:hidden}.track-day-grid{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:8px;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-step) - 1px),rgba(60,60,67,.28) calc(var(--day-step) - 1px),rgba(60,60,67,.28) var(--day-step));box-shadow:inset 1px 0 #3c3c4347,inset -1px 0 #3c3c4347;pointer-events:none;z-index:1}.track.project-track{--project-handle-size: 8px;border-radius:0;background:transparent;overflow:visible}.track.project-track .track-day-grid{left:0;right:0;box-shadow:none;background-image:linear-gradient(to right,rgba(60,60,67,.3) 0 1px,transparent 1px);background-size:var(--day-step) 100%;background-position:0 0;background-repeat:repeat-x;border-radius:0}.track.project-track.step-30 .track-day-grid{background:none;border:0}.project-month-grid{position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;z-index:1}.project-month-grid-line{position:absolute;top:0;bottom:0;width:1px;background:#3c3c4357}.project-fact-bar{position:absolute;top:24px;height:5px;border-radius:999px;background:#3394efe1;z-index:2}.current-day-line{position:absolute;top:0;bottom:0;width:2px;background:var(--ios-danger);opacity:.95;z-index:2;pointer-events:none;border-radius:99px}.bar{position:absolute;top:4px;height:22px;border-radius:10px;background:linear-gradient(90deg,#2a9dff 0%,var(--ios-accent) 100%);color:#fff;font-size:.74rem;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .5rem;z-index:3}.assignment-item-header>span{color:var(--ios-text-secondary);font-size:.78rem}.assignment-item .project-plan-tooltip{color:#fff;font-size:.72rem}.assignment-item.active{background:#0a84ff1a}.assignment-item-header{display:flex;justify-content:space-between;gap:.4rem;align-items:center}.assignment-kpi-row{margin-left:auto;display:inline-flex;align-items:center;gap:.22rem}.assignment-kpi-item{position:relative;display:inline-flex;align-items:center;gap:.2rem;border:1px solid var(--ios-border);border-radius:999px;padding:.05rem .3rem;background:#78788014;color:var(--ios-text-secondary);font-size:.68rem;line-height:1}.assignment-kpi-value{font-size:.68rem;font-weight:600}.assignment-employee-name{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.timeline-role-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.08rem .4rem;color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.02em;line-height:1}.assignment-item-header strong{font-size:.76rem;font-weight:600}.assignment-remove-btn{position:absolute;right:-30px;top:8px;width:22px;height:22px;border-radius:999px;border:1px solid var(--ios-border);display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--ios-text-secondary);background:#ffffffb3;opacity:0;visibility:hidden;pointer-events:auto;transition:opacity .15s ease .28s,transform .15s ease .28s,visibility 0s linear .43s;transform:translate(-4px)}.assignment-item:hover .assignment-remove-btn,.assignment-remove-btn:focus-visible{opacity:1;visibility:visible;transform:translate(0);transition-delay:0s,0s,0s}.assignment-remove-btn:hover{color:#fff;background:var(--ios-danger);border-color:var(--ios-danger)}.assignment-track{position:relative;height:30px;border-radius:0;border:none;background:transparent;overflow:visible}.assignment-track .track-day-grid,.assignment-vacation-track .track-day-grid{border-radius:0;box-shadow:none;background-size:var(--day-step) 100%;background-position:0 0;background-repeat:repeat-x}.assignment-track .track-day-grid{background-image:linear-gradient(to right,rgba(60,60,67,.18) 0 1px,transparent 1px)}.assignment-bar{position:absolute;top:50%;height:24px;transform:translateY(-50%);border-radius:0;background:transparent;z-index:3}.assignment-curve{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:6;overflow:visible}.assignment-curve-area{fill:currentColor;fill-opacity:.35}.assignment-curve-line{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;shape-rendering:geometricPrecision}.assignment-curve-point{fill:currentColor;stroke:#fff;stroke-width:2;cursor:move;pointer-events:auto}.assignment-curve-point:hover{r:5}.assignment-curve-value-indicator{pointer-events:none}.assignment-curve-value-indicator circle{fill:#fff;stroke:#0000002e;stroke-width:1}.assignment-curve-value-indicator text{fill:#1d1d1f;font-size:7px;font-weight:700;user-select:none;-webkit-user-select:none}.assignment-plan-handle,.project-plan-handle{position:absolute;top:0;bottom:0;z-index:5}.assignment-plan-handle.left,.assignment-plan-handle.right{width:8px;background:#fff9;box-shadow:inset 0 0 0 1px #00000038}.assignment-plan-handle.left{left:0}.assignment-plan-handle.right{right:0}.assignment-plan-handle.center{left:8px;right:8px}.assignment-plan-handle.center,.project-plan-handle.center{cursor:grab}.assignment-plan-handle.center:active,.project-plan-handle.center:active{cursor:grabbing}.assignment-plan-handle.left,.assignment-plan-handle.right,.project-plan-handle.left,.project-plan-handle.right{cursor:ew-resize}.assignment-vacation-bar{position:absolute;top:0;bottom:0;border-radius:0;background:#ff453abf;z-index:4}.assignment-vacation-tooltip-anchor{position:absolute;top:0;bottom:0;z-index:4}.assignment-vacation-tooltip-anchor .timeline-inline-tooltip{z-index:40}.assignment-vacation-track{position:relative;margin-top:0;height:6px;border-radius:999px;background:transparent;overflow:visible}.assignment-vacation-track .track-day-grid{background-image:linear-gradient(to right,rgba(60,60,67,.12) 0 1px,transparent 1px)}.assignment-edit-row{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;gap:.55rem;align-items:end}@media(max-width:900px){.assignment-edit-row{grid-template-columns:1fr}}.icon-save-btn{width:42px;height:42px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700}.bar.project-plan-bar{top:0;bottom:0;height:auto;position:absolute;border-radius:0;overflow:visible;background:#78788047;color:var(--ios-text-secondary)}.project-plan-tooltip{position:absolute;top:-34px;z-index:8;padding:.25rem .5rem;border-radius:10px;border:1px solid var(--ios-border);background:#1d1d1fe0;color:#fff;font-size:.72rem;font-weight:500;line-height:1.25;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease .28s,visibility 0s linear .43s;user-select:none;-webkit-user-select:none}.project-plan-tooltip.visible{opacity:1;visibility:visible;transition-delay:0s,0s}.project-plan-tooltip.center{left:50%;transform:translate(-50%)}.project-plan-tooltip.edge-left{left:0}.project-plan-tooltip.edge-right{right:0}.project-plan-handle.left,.project-plan-handle.right{width:var(--project-handle-size, 10px);background:transparent}.project-plan-handle.left:after,.project-plan-handle.right:after{content:"";position:absolute;top:4px;bottom:4px;width:2px;border-radius:999px;background:#3c3c436b;opacity:.5;transition:opacity .12s ease}.project-plan-handle.left:after{right:-1px}.project-plan-handle.right:after{left:-1px}.bar.project-plan-bar:hover .project-plan-handle.left:after,.bar.project-plan-bar:hover .project-plan-handle.right:after{opacity:.78}.project-plan-handle.left{left:calc(-1 * var(--project-handle-size, 10px))}.project-plan-handle.right{right:calc(-1 * var(--project-handle-size, 10px))}.project-plan-handle.center{left:0;right:0}.timeline-form{display:grid;gap:.25rem}.department-manage-list{display:grid;gap:.3rem;max-height:min(52vh,460px);overflow-y:auto;overflow-x:hidden;padding-right:.08rem}.settings-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.62rem}@media(max-width:900px){.settings-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.settings-columns{grid-template-columns:1fr}}.settings-column{display:grid;align-content:start;gap:.35rem}.department-manage-row{display:grid;grid-template-columns:1fr auto auto;gap:.4rem;align-items:center}.department-manage-row-color,.department-manage-row-grade,.department-manage-row-grade-edit{grid-template-columns:1fr 40px auto}.department-manage-row.create{grid-template-columns:1fr auto;margin-bottom:.08rem}.department-manage-row.create.department-manage-row-color,.department-manage-row.create.department-manage-row-grade{grid-template-columns:1fr 40px auto}.departments-modal{width:min(640px,100%)}.department-manage-input{min-height:32px;padding:.4rem .58rem}.department-manage-action{min-width:32px;width:32px;height:32px;padding:0;border-radius:9px;border:1px solid var(--ios-border);background:var(--ios-surface-strong);color:var(--ios-text-secondary);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;line-height:1;font-weight:700}.department-manage-action:hover:not(:disabled):not([aria-disabled=true]):not(.is-locked){background:#0a84ff1f}.department-manage-action:disabled{opacity:.45;cursor:default}.department-manage-action[aria-disabled=true],.department-manage-action.is-locked{opacity:.45;cursor:not-allowed}.department-manage-action.primary{background:var(--ios-accent);color:#fff;border-color:var(--ios-accent)}.department-manage-action.primary:hover:not(:disabled){background:var(--ios-accent-pressed)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d1d1f47;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;place-items:center;z-index:20;padding:1rem}@media(max-width:680px){.modal-backdrop{align-items:start;justify-items:stretch;overflow:auto;padding:.65rem}}.modal-card{width:min(520px,100%);background:var(--ios-surface-strong);border:1px solid var(--ios-border);border-radius:18px;padding:1rem;display:grid;gap:.7rem;box-shadow:var(--ios-shadow)}@media(max-width:680px){.modal-card{border-radius:14px;padding:.78rem;gap:.55rem}}.modal-card label{font-size:.84rem;color:var(--ios-text-secondary)}.field-label{display:inline-flex;align-items:center;gap:.28rem}.field-label.required:after{content:"*";color:var(--ios-danger);font-weight:700}.field-label.optional{opacity:.88}.field-status{display:block;margin-top:.1rem;margin-left:.35rem;font-size:.71rem;line-height:1.25}.field-status.success{color:var(--ios-accent)}.field-status.error{color:var(--ios-danger)}.field-status.pending{color:var(--ios-text-secondary)}.auth-modal{position:relative;width:min(420px,100%)}@media(max-width:680px){.auth-modal{width:100%}}.auth-oauth-divider{height:1px;background:var(--ios-border);margin:.75rem 0 .65rem}.auth-oauth-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.auth-modal-lang{position:absolute;top:.85rem;right:1rem;z-index:1}@media(max-width:680px){.auth-modal-lang{position:static;justify-self:end}}.project-settings-modal{width:min(640px,100%)}.project-settings-body{display:grid;gap:.55rem}.project-settings-form{display:grid;gap:.32rem}.project-delete-form{margin-top:.2rem;padding-top:.5rem!important;border-top:1px solid var(--ios-border)}.project-settings-inline{display:grid;align-items:center;gap:.42rem}.project-settings-inline-name{grid-template-columns:minmax(0,1fr) auto}@media(max-width:680px){.project-settings-inline-name{grid-template-columns:1fr}}.project-settings-inline-invite{grid-template-columns:minmax(0,1fr) minmax(180px,220px) auto}@media(max-width:680px){.project-settings-inline-invite{grid-template-columns:1fr}}.project-settings-invite-email{display:grid;gap:0}.project-member-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.48rem}@media(max-width:680px){.project-member-item{grid-template-columns:1fr}}.project-member-meta{min-width:0}.project-member-meta strong,.project-member-meta div{overflow-wrap:anywhere}.project-member-item .project-member-actions{flex-wrap:nowrap}@media(max-width:680px){.project-member-item .project-member-actions{justify-content:flex-start}}.auth-tabs{justify-content:center;margin-left:0;margin-right:0;padding-right:86px}.auth-tabs .tab{min-width:0}@media(max-width:680px){.auth-tabs{padding-right:0;margin-top:.1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}.employee-meta-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}@media(max-width:900px){.employee-meta-compact{grid-template-columns:1fr}}.vacation-editor-row{display:grid;gap:.35rem;padding:0}.vacation-year-track{position:relative;height:26px;border:1px solid var(--ios-border);background:#7878801a;overflow:hidden}.vacation-month-marker{position:absolute;top:0;bottom:0;width:1px;background:#78788038;z-index:1}.vacation-range-bar{z-index:3;background:linear-gradient(90deg,#ff7a4a,#ff453a)}.modal-icon-btn{width:32px;height:32px;min-width:32px;min-height:32px}.tooltip-portal{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999}.tooltip-bubble{position:fixed;transform:translate(-50%,4px);background:#18181cf5;color:#fff;border-radius:8px;border:1px solid rgba(255,255,255,.08);padding:.24rem .38rem;font-size:.68rem;line-height:1.2;max-width:min(260px,80vw);white-space:normal;text-align:center;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;box-shadow:var(--ios-shadow-soft);opacity:0;visibility:hidden;user-select:none;-webkit-user-select:none;transition:opacity .15s ease,transform .15s ease;will-change:opacity,transform}.tooltip-bubble[data-visible=true]{opacity:1;visibility:visible;transform:translate(-50%)}
