/* Centered authentication inspired by the HDC wave palette */
.auth-screen{display:grid;grid-template-columns:1fr;place-items:center;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#fbfbfc 0 28%,#fff6f3 60%,#f8ebff 100%)}
.auth-screen:before,.auth-screen:after{content:"";position:absolute;z-index:-1;left:-12%;width:125%;filter:blur(10px);animation:wave-float 12s ease-in-out infinite alternate;transform-origin:center}
.auth-screen:before{height:58%;top:30%;background:linear-gradient(130deg,#ff8427,#ff202e);border-radius:42% 58% 28% 72%/35% 45% 55% 65%;transform:rotate(3deg)}
.auth-screen:after{height:52%;top:64%;left:-7%;background:linear-gradient(130deg,#500092,#8500b0);border-radius:58% 42% 0 0/36% 58% 0 0;animation-duration:15s;animation-direction:alternate-reverse}
.auth-logo{position:absolute;left:38px;top:32px;display:flex;align-items:center;gap:10px;color:#54106f;font-size:24px;font-weight:900;letter-spacing:.04em;z-index:2}.auth-logo .brandmark{background:linear-gradient(135deg,#ff7428,#f12932);color:#fff}.auth-panel{width:100%;padding:80px 20px;z-index:1}.auth-card{background:#ffffffdc;border:1px solid #ffffffb8;border-radius:22px;padding:34px;box-shadow:0 24px 80px #3f063b38;backdrop-filter:blur(18px);animation:auth-enter .7s cubic-bezier(.2,.8,.2,1)}.auth-card h2{text-align:center}.auth-card>p{text-align:center}.auth-card input{background:#ffffffd9}.auth-card .text-btn{margin-bottom:-10px}
@keyframes auth-enter{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes wave-float{from{transform:rotate(2deg) translate3d(-1%,0,0)}to{transform:rotate(-1deg) translate3d(2%,-2%,0)}}
@media(prefers-reduced-motion:reduce){.auth-screen:before,.auth-screen:after,.auth-card{animation:none!important}}

/* Categories */
.category-row{margin-top:20px}.category-row>span{display:block;font-size:13px;font-weight:700;margin-bottom:9px}.category-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.category-buttons label{margin:0}.category-buttons input{position:absolute;opacity:0;pointer-events:none}.category-buttons label>span{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:11px;cursor:pointer;color:var(--muted);transition:.2s}.category-buttons input:checked+span{border-color:#76139b;background:#f6edf9;color:#5f087f;box-shadow:0 0 0 2px #76139b18}.category-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:0 0 auto}.category-dot.violet{background:#7400a8}.category-dot.orange,.orange{background:#ff6528}.category-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:800;margin-top:12px}.meeting-card .category-label{margin-bottom:-8px}

/* Concurrent events and drag-and-drop */
.event-slot{display:grid;grid-template-columns:1fr;gap:3px;margin-top:7px}.event-slot .event{margin-top:0;min-width:0}.event-slot.has-conflict{grid-template-columns:repeat(auto-fit,minmax(46px,1fr));padding:3px;border:1px dashed #ff9b75;border-radius:8px;background:#fff5ef}.event-slot.has-conflict .event{padding:6px 5px;font-size:10px}.event.dragging{opacity:.35}.day.drop-target{background:#fff0e8;box-shadow:inset 0 0 0 2px #ff6528}.event{transition:opacity .15s,transform .15s}.event:hover{transform:translateY(-1px)}

/* Profile preferences */
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0;padding:15px;background:#f7f2f7;border-radius:11px}.setting-row>div{display:flex;flex-direction:column;gap:4px}.setting-row small{color:var(--muted)}.switch{margin:0;flex:0 0 auto}.switch input{display:none}.switch span{display:block;width:48px;height:27px;border-radius:999px;background:#c8c1ca;position:relative;cursor:pointer;transition:.2s}.switch span:after{content:"";position:absolute;width:21px;height:21px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #0003;transition:.2s}.switch input:checked+span{background:#7200a4}.switch input:checked+span:after{transform:translateX(21px)}

/* Dark theme */
html[data-theme=dark]{color-scheme:dark;--ink:#f5edf8;--muted:#bcaec1;--line:#443349;--cream:#201721;--green:#b45bd5}html[data-theme=dark] body{background:#171019}html[data-theme=dark] main{background:radial-gradient(circle at 88% 0,#ff752714 0,transparent 25%),radial-gradient(circle at 20% 100%,#8a16b51f 0,transparent 32%),#19121b}html[data-theme=dark] header,html[data-theme=dark] .calendar-toolbar{color:#f5edf8}html[data-theme=dark] .calendar,html[data-theme=dark] .event-card,html[data-theme=dark] .meeting-card,html[data-theme=dark] .empty-state{background:#241a27;border-color:#443349}html[data-theme=dark] .day,html[data-theme=dark] .weekday{border-color:#443349}html[data-theme=dark] .other{background:#1c151e}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select,html[data-theme=dark] .outline,html[data-theme=dark] .category-buttons label>span{background:#2e2231;color:#f5edf8;border-color:#514056}html[data-theme=dark] .category-buttons input:checked+span,html[data-theme=dark] .setting-row,html[data-theme=dark] .card-open,html[data-theme=dark] .detail-url{background:#39253f;color:#e3a7fa}html[data-theme=dark] .event-slot.has-conflict{background:#302129;border-color:#b05255}html[data-theme=dark] .day.drop-target{background:#3b2828}html[data-theme=dark] .close{background:#3d3041;color:#fff}html[data-theme=dark] .auth-card{background:#211824e8;color:#fff;border-color:#ffffff20}html[data-theme=dark] .auth-card input{background:#302434}html[data-theme=dark] .auth-logo{color:#fff}

@media(max-width:850px){.auth-logo{left:20px;top:20px}.auth-panel{padding:75px 16px 30px}.auth-card{padding:27px 20px}.event-slot.has-conflict{grid-template-columns:1fr}.event-slot.has-conflict .event{font-size:9px}.detail-card .modal-actions{grid-template-columns:1fr 1fr}.detail-card .modal-actions .danger{grid-column:1/-1}.detail-card .modal-actions button{min-width:0}}

/* Fast, subtle motion */
.view-enter{animation:view-in .22s ease-out}.modal:not(.hidden) .backdrop{animation:fade-in .16s ease-out}.modal:not(.hidden) .event-card{animation:card-in .2s cubic-bezier(.2,.8,.2,1)}.meeting-card{animation:list-card-in .24s ease-out both}.meeting-card:nth-child(2){animation-delay:.025s}.meeting-card:nth-child(3){animation-delay:.05s}.meeting-card:nth-child(4){animation-delay:.075s}
@keyframes view-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes card-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes list-card-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Manual date and time fields */
.datetime-block{margin-top:18px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#faf7fa}.datetime-block>b{font-size:13px}.datetime-row{display:grid;grid-template-columns:1.4fr .8fr;gap:10px}.datetime-row label{margin-top:9px;color:var(--muted);font-size:11px}.datetime-row input{margin-top:5px;font-variant-numeric:tabular-nums;letter-spacing:.04em}.datetime-row input:invalid:not(:placeholder-shown){border-color:#d24b52}.profile-color{margin:22px 0}.profile-color>b,.profile-color>small{display:block}.profile-color>small{color:var(--muted);font-size:12px;margin-top:4px}.profile-palette{display:flex;gap:10px;margin-top:12px}.profile-palette button{width:29px;height:29px;border:3px solid #fff;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #cfc5d1;transition:.15s}.profile-palette button:hover{transform:scale(1.08)}.profile-palette button.selected{box-shadow:0 0 0 3px var(--ink);transform:scale(1.08)}

/* Per-user event color and status */
.event{background:var(--event-color,#7400a8)!important}.event.completed-event{opacity:.58;text-decoration:line-through;background:repeating-linear-gradient(135deg,var(--event-color,#7400a8) 0 8px,color-mix(in srgb,var(--event-color,#7400a8),#fff 22%) 8px 16px)!important}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.card-actions .card-open{margin:0}.complete-btn,.status-btn{border:0;border-radius:8px;padding:9px;font-weight:800}.complete-btn{background:#edf7f1;color:#176941}.status-btn{background:#e8f5ed;color:#176941}.completed-badge{display:inline-block;background:#e8f5ed;color:#176941;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;margin:12px 0 3px}

/* Dark theme controls */
html[data-theme=dark] .month-nav button{background:#34263a!important;color:#fff!important;border-color:#5a4561!important;text-shadow:0 0 1px #fff}html[data-theme=dark] .datetime-block{background:#2a202d}html[data-theme=dark] .profile-palette button{border-color:#241a27}html[data-theme=dark] .complete-btn,html[data-theme=dark] .status-btn,html[data-theme=dark] .completed-badge{background:#213a30;color:#8fe0b5}
@media(prefers-reduced-motion:reduce){.view-enter,.modal:not(.hidden) .backdrop,.modal:not(.hidden) .event-card,.meeting-card{animation:none!important}.profile-palette button,.event{transition:none!important}}
@media(max-width:430px){.datetime-row{grid-template-columns:1.25fr .75fr}.profile-palette{flex-wrap:wrap}}

/* More calendar space */
@media(min-width:851px){.app{grid-template-columns:190px minmax(0,1fr)}aside{padding:24px 14px}.app aside .brand{padding:0 9px 32px}nav button,.aside-bottom button{padding:12px 10px}main{padding:28px 30px}.day{min-height:124px}}

/* Assignee control */
.assignee-select{width:100%;margin-top:4px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-weight:700}.assignee-select:disabled{opacity:.6}.author-chip{max-width:145px}

/* Closing motion */
.modal.closing{pointer-events:none}.modal.closing .backdrop{animation:fade-out .16s ease-in forwards}.modal.closing .event-card{animation:card-out .16s ease-in forwards}@keyframes fade-out{to{opacity:0}}@keyframes card-out{to{opacity:0;transform:translateY(6px) scale(.985)}}

/* Dark theme contrast fixes */
html[data-theme=dark] body,html[data-theme=dark] main,html[data-theme=dark] .event-card,html[data-theme=dark] .meeting-card,html[data-theme=dark] .calendar,html[data-theme=dark] .empty-state{color:#f8f1fa}html[data-theme=dark] p,html[data-theme=dark] label,html[data-theme=dark] .hint,html[data-theme=dark] .tracker-url,html[data-theme=dark] .company-name,html[data-theme=dark] .meeting-top,html[data-theme=dark] .no-tracker,html[data-theme=dark] .profile-head small,html[data-theme=dark] .setting-row small,html[data-theme=dark] .profile-color>small{color:#cfc2d3}html[data-theme=dark] .overline,html[data-theme=dark] .weekday,html[data-theme=dark] .date{color:#d9cde0}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#94859b;opacity:1}html[data-theme=dark] .error{color:#ff969d!important}html[data-theme=dark] .toast{background:#f5edf8;color:#231627;box-shadow:0 10px 35px #0008}html[data-theme=dark] .text-btn{color:#cdbfd2}html[data-theme=dark] .text-btn b,html[data-theme=dark] .tracker-action,html[data-theme=dark] .tracker-block a{color:#dda2f5}html[data-theme=dark] .assignee-select{background:#302434;color:#fff;border-color:#5a4561}html[data-theme=dark] .assignee-select option{background:#302434;color:#fff}html[data-theme=dark] .profile-logout{color:#ff9ca2}html[data-theme=dark] .outline:hover{background:#3b2d40}
@media(prefers-reduced-motion:reduce){.modal.closing .backdrop,.modal.closing .event-card{animation:none!important}}

/* In-app confirmation dialog */
.confirm-modal{z-index:30}.confirm-card{width:min(410px,100%);text-align:center;padding:32px}.confirm-icon{width:48px;height:48px;margin:0 auto 17px;border-radius:50%;display:grid;place-items:center;background:#fff0e8;color:#ed502c;font-size:25px;font-weight:900;animation:confirm-pulse .32s ease-out}.confirm-card h2{margin:0 0 9px}.confirm-card p{color:var(--muted);line-height:1.5;margin:0 auto 24px;max-width:330px}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.confirm-actions button{width:100%}.confirm-danger{background:#bc3038!important;box-shadow:none}.confirm-modal:not(.hidden) .confirm-card{animation:confirm-in .24s cubic-bezier(.2,.9,.3,1)}@keyframes confirm-in{from{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:none}}@keyframes confirm-pulse{from{transform:scale(.7);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}html[data-theme=dark] .confirm-icon{background:#462a2d;color:#ff9d83}html[data-theme=dark] .confirm-card p{color:#d1c4d5}

/* Live synchronization status */
.sync-indicator{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:999px;background:#f3eef4;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap;transition:.2s}.sync-indicator i{width:8px;height:8px;border-radius:50%;background:#b0a7b2}.sync-indicator.online{background:#eaf7ef;color:#24734d}.sync-indicator.online i{background:#28a266;box-shadow:0 0 0 4px #28a26618;animation:sync-pulse 2s ease-in-out infinite}.sync-indicator.offline{background:#fff0ed;color:#a74739}.sync-indicator.offline i{background:#e15b47}.sync-indicator.connecting i{animation:sync-blink .8s ease-in-out infinite alternate}@keyframes sync-pulse{50%{box-shadow:0 0 0 6px #28a26600}}@keyframes sync-blink{to{opacity:.3}}html[data-theme=dark] .sync-indicator{background:#342a37;color:#d0c4d4}html[data-theme=dark] .sync-indicator.online{background:#203b2d;color:#8ce0b2}html[data-theme=dark] .sync-indicator.offline{background:#45282a;color:#ffaaa0}
@media(max-width:850px){.sync-indicator{padding:7px}.sync-indicator span{display:none}}

/* What's new changelog */
.whats-new{position:relative}.whats-new-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800;white-space:nowrap;transition:.18s}.whats-new-btn:hover,.whats-new-btn[aria-expanded=true]{border-color:#b67acb;background:#f7eff9;color:#68108a}.whats-new-btn svg{width:15px;height:15px;fill:currentColor}.whats-new-panel{position:fixed;z-index:18;right:25px;top:78px;width:min(400px,calc(100vw - 30px));max-height:calc(100vh - 98px);overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 22px 65px #37132f2e;padding:19px;animation:changelog-in .18s cubic-bezier(.2,.8,.2,1)}.whats-new-head{display:flex;align-items:start;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.whats-new-head h3{margin:4px 0 0;font-size:20px}.whats-new-head>span{background:#f0e4f4;color:#6b138a;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.whats-new-panel article{padding:15px 1px 5px}.whats-new-panel article+article{border-top:1px solid var(--line);margin-top:10px}.whats-new-panel time{color:var(--muted);font-size:10px}.whats-new-panel h4{font-size:14px;margin:5px 0 8px}.whats-new-panel ul{margin:0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.5}.whats-new-panel li+li{margin-top:4px}@keyframes changelog-in{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}

/* Wide two-column profile */
.profile-card{width:min(890px,calc(100vw - 40px));max-height:min(720px,calc(100vh - 32px));overflow:hidden;border-radius:14px}.profile-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:30px;margin-top:18px}.profile-column{min-width:0}.profile-security{border-left:1px solid var(--line);padding-left:30px}.profile-security label{margin-top:12px}.profile-security hr{margin:20px 0}.profile-security .primary{width:100%}.profile-personal .profile-head{margin:5px 0 17px}.profile-personal .profile-color{margin:19px 0}.profile-personal .setting-row{margin:18px 0}.profile-palette{display:grid;grid-template-columns:repeat(8,29px);gap:9px}.profile-logout{text-align:left;padding:10px 0;margin:0;width:auto}.profile-card .hint{margin:8px 0 0}

html[data-theme=dark] .whats-new-btn,html[data-theme=dark] .whats-new-panel{background:#2b202e;color:#f5edf8;border-color:#4c3a51}html[data-theme=dark] .whats-new-btn:hover,html[data-theme=dark] .whats-new-btn[aria-expanded=true]{background:#3b2940;color:#e4a6fa}html[data-theme=dark] .whats-new-head>span{background:#43294c;color:#e6b2f8}html[data-theme=dark] .whats-new-panel ul,html[data-theme=dark] .whats-new-panel time{color:#cdbfd2}

@media(max-width:850px){.whats-new-btn{width:34px;height:34px;padding:0;justify-content:center}.whats-new-btn span{display:none}.whats-new-panel{right:10px;top:68px;width:calc(100vw - 20px);max-height:calc(100vh - 88px)}.profile-card{width:100%;max-height:96vh;overflow-y:auto}.profile-layout{grid-template-columns:1fr;gap:22px}.profile-security{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.profile-palette{grid-template-columns:repeat(8,29px)}}
@media(max-width:430px){.profile-palette{grid-template-columns:repeat(6,29px)}.profile-card .modal-head h2{font-size:22px}}

/* Month-to-day calendar navigation */
.day-open-date{border:0;background:transparent;padding:0;cursor:pointer;font:inherit;color:inherit}.today .day-open-date{background:#f53b2c;color:#fff}.day-more{display:block;width:100%;border:0;background:#f5edf7;color:#6c198a;border-radius:6px;padding:5px 6px;margin-top:6px;text-align:left;font-size:10px;font-weight:800}.day-more:hover{background:#ecdcf1}.day-card{width:min(900px,100%);height:min(760px,94vh);max-height:94vh;overflow:hidden;display:flex;flex-direction:column}.day-schedule-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0}.day-schedule-toolbar>span{color:var(--muted);font-size:12px;font-weight:800}.day-schedule-toolbar .primary{padding:10px 14px}.day-timeline{flex:1;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.day-timeline-canvas{position:relative;min-width:560px}.day-hours{position:absolute;inset:0;pointer-events:none}.day-hour-label{position:absolute;left:0;width:55px;padding-right:8px;transform:translateY(-6px);text-align:right;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.day-hour-line{position:absolute;left:60px;right:0;border-top:1px solid var(--line)}.day-track{position:absolute;left:60px;right:0;top:0;bottom:0}.day-event{position:absolute;border:0;border-left:4px solid color-mix(in srgb,var(--event-color),#000 18%);border-radius:7px;background:color-mix(in srgb,var(--event-color),#fff 10%);color:#fff;padding:7px 8px;text-align:left;overflow:hidden;box-shadow:0 2px 8px #31122720;transition:transform .14s,filter .14s;z-index:1}.day-event:hover{transform:translateY(-1px);filter:brightness(.96);z-index:2}.day-event b,.day-event span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-event b{font-size:11px}.day-event span{font-size:10px;opacity:.85;margin-top:4px}.day-event.completed{opacity:.6;text-decoration:line-through}.day-empty{margin:45px auto;width:max-content;max-width:80%;color:var(--muted);font-size:13px}.datetime-row input:focus{caret-color:transparent}
html[data-theme=dark] .day-more{background:#38283d;color:#e3a7fa}html[data-theme=dark] .day-timeline{background:#211824;border-color:#443349}html[data-theme=dark] .day-hour-line{border-color:#443349}html[data-theme=dark] .day-hour-label{color:#bcaec1}
.datetime-row input:focus{caret-color:auto}
@media(max-width:850px){.day-card{height:96vh;max-height:96vh}.day-schedule-toolbar{align-items:flex-start}.day-schedule-toolbar .primary{font-size:11px}.day-timeline-canvas{min-width:0}}

/* Fixed workspace, period views and statistics */
body.app-open{overflow:hidden}.app-open .app{height:100dvh;min-height:0;overflow:hidden}.app-open aside{height:100dvh;min-height:0;position:sticky;top:0}.app-open main{height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column}.app-open main>header{flex:0 0 auto;margin-bottom:20px}.app-open #calendarView{flex:1;min-height:0;display:flex;flex-direction:column}.app-open .calendar-toolbar{flex:0 0 auto}.app-open #calendar{flex:1;min-height:0}.app-open #mineView,.app-open #adminView,.app-open #statisticsView{flex:1;min-height:0;overflow:auto;padding-right:5px}.month-calendar{grid-template-rows:38px repeat(6,minmax(0,1fr));height:100%}.month-calendar .weekday{height:auto;padding:12px}.month-calendar .day{min-height:0;overflow:hidden;padding:7px}.month-calendar .event{margin-top:4px;padding:5px 7px}.month-calendar .event small{display:none}.period-switch{display:inline-flex;padding:3px;background:#f1e9f2;border-radius:10px}.period-switch button{border:0;background:transparent;color:var(--muted);border-radius:8px;padding:8px 13px;font-size:11px;font-weight:800}.period-switch button.active{background:#fff;color:#68108a;box-shadow:0 2px 8px #3d153618}.period-calendar{display:block;overflow:hidden}.week-calendar,.day-calendar{height:100%}.week-header{display:grid;grid-template-columns:56px repeat(7,minmax(110px,1fr));height:54px;border-bottom:1px solid var(--line);min-width:820px}.week-day-head{border:0;border-left:1px solid var(--line);background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:7px}.week-day-head span{text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:800}.week-day-head b{font-size:17px}.week-day-head.today b{background:#f53b2c;color:#fff;width:28px;height:28px;border-radius:50%;display:grid;place-items:center}.week-scroll,.main-day-scroll{height:calc(100% - 54px);overflow:auto}.week-board{display:grid;grid-template-columns:56px repeat(7,minmax(110px,1fr));min-width:820px}.week-hours{position:relative;background:#fff}.week-hours span{position:absolute;right:7px;transform:translateY(-6px);color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums}.week-day-track{position:relative;border-left:1px solid var(--line);background:repeating-linear-gradient(to bottom,#fff 0, #fff calc(var(--hour-height) - 1px),var(--line) var(--hour-height))}.period-event{position:absolute;border:0;border-left:3px solid color-mix(in srgb,var(--event-color),#000 20%);border-radius:6px;background:var(--event-color);color:#fff;padding:5px 6px;text-align:left;overflow:hidden;z-index:1;box-shadow:0 2px 7px #30112720}.period-event:hover{filter:brightness(.95);z-index:3}.period-event b,.period-event span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.period-event b{font-size:9px}.period-event span{font-size:8px;opacity:.86;margin-top:3px}.period-event.completed{opacity:.55;text-decoration:line-through}.main-day-scroll{height:100%}.main-day-board{display:grid;grid-template-columns:62px minmax(300px,1fr);min-width:430px}.main-day-board .week-day-track{--hour-height:72px}.statistics-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.statistics-summary article,.statistics-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 28px #52234c0b}.statistics-summary article{padding:18px}.statistics-summary span{display:block;color:var(--muted);font-size:11px;font-weight:800}.statistics-summary b{display:block;font-size:28px;margin-top:7px}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.statistics-card{padding:18px}.statistics-card>div:first-child{display:flex;align-items:center;gap:11px}.statistics-card h4{margin:0 0 3px}.statistics-card small{color:var(--muted)}.statistics-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#f0e4f4;color:#6b138a;font-weight:900}.statistics-numbers{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px!important;margin:18px 0 13px}.statistics-numbers span{font-size:9px;color:var(--muted)}.statistics-numbers b{display:block;color:var(--ink);font-size:18px;margin-bottom:2px}.statistics-progress{height:7px!important;border-radius:99px;background:#eee5ef;overflow:hidden}.statistics-progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#ff6f25,#7400a8)}
html[data-theme=dark] .period-switch{background:#302434}html[data-theme=dark] .period-switch button.active,html[data-theme=dark] .week-day-head,html[data-theme=dark] .week-hours,html[data-theme=dark] .week-day-track,html[data-theme=dark] .statistics-summary article,html[data-theme=dark] .statistics-card{background:#241a27;color:#f8f1fa}html[data-theme=dark] .week-day-track{background:repeating-linear-gradient(to bottom,#241a27 0,#241a27 calc(var(--hour-height) - 1px),#443349 var(--hour-height))}html[data-theme=dark] .statistics-numbers b{color:#f8f1fa}html[data-theme=dark] .statistics-progress{background:#443349}
@media(max-width:850px){.app-open main{height:calc(100dvh - 64px);padding-bottom:10px}.app-open main>header{margin-bottom:12px}.calendar-toolbar{gap:8px;justify-content:space-between}.period-switch button{padding:7px 9px}.month-nav{gap:6px}.month-nav h3{min-width:135px;font-size:18px}.statistics-summary{grid-template-columns:repeat(2,1fr)}.week-header,.week-board{min-width:760px}.month-calendar .weekday{padding:8px 2px}.month-calendar .day{padding:4px}.month-calendar .event{font-size:8px;padding:4px}.day-more{font-size:8px;padding:3px}}
@media(max-width:850px){.app-open aside{height:auto;min-height:0;position:fixed;top:auto;bottom:0}}
@media(max-width:500px){.calendar-toolbar{flex-wrap:wrap}.period-switch{width:100%;justify-content:center}.period-switch button{flex:1}}
.app-open aside nav button,.app-open .aside-bottom button{font-size:12px;padding-left:8px;padding-right:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-open aside nav button span,.app-open .aside-bottom button span{width:23px}
.month-calendar .day.has-more{padding-bottom:30px}.month-calendar .day-more{position:absolute;right:7px;bottom:6px;width:auto;min-width:28px;margin:0;padding:5px 8px;text-align:center;border-radius:999px;font-size:10px;line-height:1;font-weight:900;z-index:2}
@media(max-height:759px){.month-calendar .day.has-more .event{width:calc(100% - 38px)}}

/* Compact event form */
#eventForm{width:min(720px,100%);max-height:calc(100dvh - 24px);overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;padding:22px 24px}#eventForm>.modal-head,#eventForm>.event-notes,#eventForm>.category-row,#eventForm>.error,#eventForm>.modal-actions{grid-column:1/-1}#eventForm>label{margin:0}#eventForm input,#eventForm textarea{margin-top:5px;padding:10px 12px}#eventForm .datetime-block{margin:0;padding:10px}#eventForm .datetime-row{gap:7px}#eventForm .datetime-row label{margin-top:6px}#eventForm .category-row{margin-top:0}#eventForm .category-row>span{margin-bottom:6px}#eventForm .category-buttons label>span{padding:8px}#eventForm .modal-actions{margin-top:0}#eventForm .error{margin:0!important;min-height:16px}.field-tracker small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.field-tracker small.issue-ready{color:#238055;font-weight:800}.week-day-track{cursor:crosshair}.week-day-track .period-event{cursor:pointer}html[data-theme=dark] .field-tracker small.issue-ready{color:#8fe0b5}
@media(max-width:600px){#eventForm{padding:16px;gap:8px 10px}.field-company,.field-tracker,#eventForm>.datetime-block{grid-column:1/-1}#eventForm .modal-head h2{font-size:21px}#eventForm input,#eventForm textarea{padding:8px 9px}#eventForm .datetime-block{padding:8px}#eventForm .datetime-row{grid-template-columns:1.35fr .65fr}}

/* Full-day timeline, current time and monthly financial statistics */
.week-scroll{height:100%;overflow:auto;scrollbar-gutter:stable}.week-calendar-content{min-width:820px}.week-calendar-content .week-header{position:sticky;top:0;z-index:5;background:#fff}.main-day-scroll{height:100%;scrollbar-gutter:stable}.week-hours{overflow:visible}.week-hours span.timeline-hour-first{transform:translateY(3px)}.week-hours span.timeline-hour-last{transform:translateY(calc(-100% - 3px))}.current-time-line{position:absolute;left:0;right:0;border-top:2px solid #ed332c;z-index:4;pointer-events:none;filter:drop-shadow(0 1px 1px #fff8)}.current-time-line i{position:absolute;left:-4px;top:-5px;width:9px;height:9px;border-radius:50%;background:#ed332c}.statistics-month{margin:0;min-width:190px;color:var(--muted);font-size:11px;font-weight:800}.statistics-month input{display:block;width:100%;margin-top:6px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.statistics-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.statistics-summary .statistics-money{grid-column:span 2;background:linear-gradient(135deg,#fff7ee,#f7edfa)}.statistics-summary .statistics-money b{font-size:23px}.statistics-card-money{display:flex!important;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.statistics-card-money span{color:var(--muted);font-size:10px;font-weight:800}.statistics-card-money b{white-space:nowrap;font-size:14px}.event-cost{min-width:0}.event-cost small{display:block;color:var(--muted);font-size:10px;margin-top:5px}#eventForm>.event-notes{grid-column:auto}#eventForm>.event-cost{grid-column:auto}#eventForm .event-notes textarea{height:64px;resize:none}#eventForm .event-cost input{font-variant-numeric:tabular-nums}
html[data-theme=dark] .week-calendar-content .week-header{background:#241a27}html[data-theme=dark] .statistics-month input{background:#2e2231;color:#f5edf8;border-color:#514056}html[data-theme=dark] .statistics-summary .statistics-money{background:linear-gradient(135deg,#382a24,#35243b)}html[data-theme=dark] .current-time-line{filter:drop-shadow(0 1px 1px #0008)}
@media(max-width:850px){.statistics-month{min-width:160px}.statistics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-summary .statistics-money{grid-column:1/-1}}
@media(max-width:600px){#eventForm>.event-notes,#eventForm>.event-cost{grid-column:1/-1}#eventForm .event-notes textarea{height:48px}.statistics-month{margin-top:14px;width:100%}}
