@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;550;600;650;700;750;800&display=swap');
:root{--purple:#6800ce;--bg:#fafafa;--surface:#fff;--sidebar:#f7f7f7;--text:#2e1135;--muted:#746779;--border:#e4e0e7;--selected:#f0e6ff;--soft:#f8f4fe;--shadow:0 6px 30px #2e113505;--radius:12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #bb91ff;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}button:hover{filter:brightness(.97)}svg{width:19px;height:19px;flex-shrink:0;vertical-align:middle;stroke-width:1.7}strong{font-weight:600}.sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:var(--sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:26px 16px 0;z-index:20}.brand{display:flex;align-items:center;gap:9px;font-size:31px;font-weight:800;letter-spacing:-1.7px;margin:0 12px 0}.brand-mark{background:#6800ce;color:#fff;border-radius:9px;font-size:32px;width:35px;height:36px;display:grid;place-content:center;line-height:1}.brand-dot{color:#cb208e}.workspace{display:flex;align-items:center;text-align:left;gap:10px;border:1px solid var(--border);border-radius:9px;padding:12px 10px;background:var(--surface);width:100%}.workspace>span:nth-child(2){flex:1}.workspace>span:last-child svg{width:14px}.workspace small,.profile small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.product-icon{display:grid;place-items:center;width:32px;height:34px;background:var(--selected);color:var(--purple);border-radius:7px}.side-scroll{overflow:auto;flex:1;scrollbar-width:thin}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.3px;color:var(--muted);margin:26px 12px 13px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border-radius:8px;text-align:left;font-weight:550;margin:4px 0;color:var(--muted)}.nav-item.active{background:var(--selected);color:var(--purple)}.count{margin-left:auto;background:var(--selected);color:var(--purple);border-radius:5px;font-size:12px;min-width:22px;text-align:center;padding:1px 5px}.mini-calendar{padding:22px 10px 1px}.mini-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:13px}.mini-title>div{display:flex}.icon-btn{display:inline-flex;justify-content:center;align-items:center;width:34px;height:34px;border-radius:7px;flex-shrink:0;color:var(--muted)}.icon-btn:hover{background:var(--selected);color:var(--purple)}.mini-title .icon-btn{width:23px;height:26px}.mini-title svg{width:15px}.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:3px;text-align:center}.mini-grid>span{font-size:11px;color:var(--muted);padding-bottom:7px}.mini-day{height:26px;min-width:24px;font-size:12px;border-radius:50%;padding:0}.mini-day.faded{opacity:.4}.mini-day.in-week{background:var(--selected);border-radius:5px}.mini-day.today{background:var(--purple);color:white;border-radius:50%}.calendar-check{display:flex;align-items:center;gap:10px;padding:7px 12px;cursor:pointer}.calendar-check input{appearance:none;width:16px;height:16px;border-radius:4px;border:1px solid var(--cal-color);margin:0;cursor:pointer}.calendar-check input:checked{background:var(--cal-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E")}.mail-card{border:1px solid var(--border);margin:25px 2px 18px;padding:15px;border-radius:10px;background:var(--surface)}.mail-card strong{display:block;font-size:13px;margin:8px 0}.mail-card p{font-size:12px;color:var(--muted);margin:0 0 9px}.mail-icon{color:var(--purple)}.text-btn{color:var(--purple);font-weight:600;padding:4px 0;display:inline-flex;gap:8px;align-items:center;font-size:13px}.side-bottom{border-top:1px solid var(--border);padding:7px 0 14px}.profile{display:flex;gap:10px;align-items:center;text-align:left;padding:9px 8px 0;width:100%;font-size:13px}.profile>span:nth-child(2){flex:1}.avatar{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--selected);color:var(--purple);font-size:12px;font-weight:700;flex-shrink:0}.app{margin-left:244px}.topbar{height:69px;border-bottom:1px solid var(--border);background:var(--surface);padding:0 30px;display:flex;align-items:center;justify-content:space-between}.breadcrumb{display:flex;gap:17px;align-items:center;font-size:13px}.breadcrumb>span{color:var(--muted)}.breadcrumb svg{width:13px}.top-actions{display:flex;align-items:center;gap:21px}.themes{border:1px solid var(--border);border-radius:7px;display:flex;padding:3px;font-size:12px}.themes button{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:4px}.themes button.selected{background:var(--selected);box-shadow:0 0 0 1px #aa81d53d}.theme-dot{width:8px;height:8px;border-radius:50%;border:1px solid #cfc8d3}.theme-dot.light{background:white}.theme-dot.dark{background:#242127}.theme-dot.magenta{background:#cb208e;border-color:#cb208e}.demo{font-size:11px;color:var(--muted)}.demo:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#84af9c;margin-right:7px}main{padding:29px 30px 15px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.page-heading .eyebrow{margin:0 0 8px;font-size:10px}h1{font-size:30px;font-weight:750;letter-spacing:-1.1px;line-height:1.3;margin:0 0 6px}.subtitle{color:var(--muted);margin:0;font-size:14px}.primary,.outline,.secondary,.danger{border-radius:7px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:13px;min-height:40px}.primary{background:var(--purple);color:#fff;box-shadow:0 3px 7px #6800ce13}.outline{border:1px solid var(--border);background:var(--surface)}.secondary{background:var(--selected);color:var(--purple)}.danger{background:#fff0f1;color:#b42b40}.calendar-shell{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;gap:12px;flex-wrap:wrap}.period-controls{display:flex;align-items:center;gap:3px}.period-controls .outline{margin-right:10px;min-height:34px;padding:5px 12px}.period-controls h2{font-size:17px;letter-spacing:-.4px;margin:0 9px;font-weight:650}.week-tag{font-size:10px;color:var(--muted);padding:3px 7px;border:1px solid var(--border);border-radius:4px}.view-controls{display:flex;gap:12px;align-items:center}.segmented{display:flex;background:var(--bg);border:1px solid var(--border);padding:3px;border-radius:7px}.segmented button{padding:5px 11px;border-radius:4px;font-size:12px}.segmented button.active{background:var(--surface);color:var(--purple);box-shadow:0 1px 4px #2e113515;font-weight:650}.week-header{display:grid;grid-template-columns:55px repeat(var(--days,7),minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding-right:0}.zone{align-self:end;color:var(--muted);font-size:10px;text-align:center;padding:10px 0}.day-heading{text-align:center;padding:13px 4px 10px;border-left:1px solid var(--border)}.day-heading>span{display:block;font-size:10px;letter-spacing:1px;font-weight:550;color:var(--muted);margin-bottom:4px}.day-heading>button{font-size:22px;font-weight:550;width:35px;height:35px;border-radius:50%;padding:0;line-height:35px}.day-heading.current>span{color:var(--purple)}.day-heading.current>button{background:var(--purple);color:#fff}.all-day-row{display:grid;grid-template-columns:55px repeat(var(--days,7),minmax(0,1fr));border-bottom:1px solid var(--border);min-height:33px}.all-day-row>span{font-size:9px;color:var(--muted);align-self:center;text-align:center}.all-day-slot{padding:4px;border-left:1px solid var(--border);min-width:0}.all-day-event{width:100%;border-radius:4px;text-align:left;background:#edf5f0;color:#386652;font-size:10px;padding:3px 6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.time-scroll{height:calc(100vh - 402px);min-height:300px;max-height:750px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.time-grid{display:grid;grid-template-columns:55px repeat(var(--days,7),minmax(0,1fr));height:768px}.time-axis{position:relative}.hour-label{position:absolute;top:calc(var(--hour)*64px - 8px);font-size:10px;color:var(--muted);width:45px;text-align:right}.hour-label:first-child{top:3px}.day-column{position:relative;border-left:1px solid var(--border);background:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,color-mix(in srgb,var(--border) 35%,transparent) 31px,color-mix(in srgb,var(--border) 35%,transparent) 32px,transparent 32px,transparent 63px,var(--border) 63px,var(--border) 64px)}.day-column.current{background-color:var(--soft)}.day-column.weekend{background-color:color-mix(in srgb,var(--bg) 75%,transparent)}.time-slot{position:absolute;left:0;right:0;height:32px;cursor:pointer}.time-slot:hover{background:color-mix(in srgb,var(--selected) 65%,transparent)}.event{position:absolute;left:5px;right:5px;border-radius:6px;border-left:3px solid var(--event-color);background:var(--event-bg);color:var(--event-text);text-align:left;padding:7px 8px;overflow:hidden;display:flex;flex-direction:column;gap:2px;z-index:2;box-shadow:0 1px 1px #00000004}.event:hover{filter:brightness(.96);box-shadow:0 3px 8px #2e113520;z-index:4}.event .event-title{font-size:12px;font-weight:650;line-height:1.35;overflow:hidden}.event .event-time{font-size:10px;white-space:nowrap;opacity:.85}.event .event-location{font-size:10px;opacity:.75;margin-top:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event svg{width:11px;height:11px}.current-line{height:1px;background:#cb208e;position:absolute;left:0;right:0;z-index:5;pointer-events:none}.current-line:before{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:#cb208e;left:-3px;top:-2px}.calendar-footer{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding:11px 18px;font-size:10px;color:var(--muted)}.calendar-footer>span{display:flex;align-items:center;gap:6px}.calendar-footer svg{width:12px;height:12px}.below-calendar{display:flex;justify-content:space-between;gap:10px;padding-top:14px;font-size:10px;color:var(--muted)}.small-dot{display:inline-block;width:5px;height:5px;background:var(--purple);border-radius:50%;margin-right:5px}.mobile-menu{display:none}[hidden]{display:none!important}#search-area{padding:0 18px 14px;display:flex;align-items:center;gap:10px}input,select,textarea{border:1px solid var(--border);border-radius:7px;padding:10px 12px;background:var(--surface);color:var(--text);min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #bb91ff;outline-offset:1px}#search{flex:1}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekday{text-align:center;color:var(--muted);font-size:11px;padding:12px;border-top:1px solid var(--border)}.month-day{min-height:112px;border-top:1px solid var(--border);border-right:1px solid var(--border);padding:6px;overflow:hidden}.month-day>button:first-child{width:28px;height:28px;border-radius:50%;font-size:12px;margin-bottom:4px}.month-day.today>button:first-child{background:var(--purple);color:white}.month-day.faded{background:var(--bg)}.month-event{display:block;text-align:left;font-size:10px;padding:3px 5px;border-radius:4px;background:var(--event-bg);color:var(--event-text);width:100%;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-view{min-height:360px;padding:0 22px}.list-day{display:flex;padding:20px 0;border-top:1px solid var(--border);gap:20px}.list-date{width:95px;flex-shrink:0;color:var(--muted);font-size:12px}.list-date strong{display:block;color:var(--text);font-size:24px}.list-events{flex:1}.list-event{display:flex;align-items:center;gap:18px;text-align:left;padding:12px 15px;width:100%;border-radius:8px;margin-bottom:6px;background:var(--event-bg);color:var(--event-text)}.list-event>span:first-child{width:90px;flex-shrink:0;font-size:12px}.list-event small{display:block;font-size:11px;margin-top:3px}.empty{padding:65px 20px;text-align:center;color:var(--muted)}.empty svg{width:35px;height:35px;color:var(--purple);margin-bottom:12px}.empty h3{color:var(--text);margin:0 0 6px}.empty p{margin:0 0 18px}.invite-intro{display:flex;align-items:center;gap:12px;border:1px solid #d4bcff;background:var(--selected);border-radius:10px;padding:19px;margin-bottom:22px;color:var(--text)}.invite-intro svg{color:var(--purple);width:26px;height:26px}.invite-intro p{margin:3px 0 0;color:var(--muted);font-size:13px}.invite-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.invite-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:24px}.invite-card h2{font-size:20px;letter-spacing:-.5px;margin:16px 0}.badge{font-size:11px;background:var(--selected);color:var(--purple);border-radius:4px;padding:4px 8px;display:inline-block}.invite-card p{font-size:13px;display:flex;gap:9px;align-items:center;color:var(--muted)}.invite-card footer{display:flex;gap:8px;margin-top:22px;flex-wrap:wrap}dialog{padding:0;border:1px solid var(--border);border-radius:16px;max-width:min(600px,calc(100vw - 30px));width:600px;color:var(--text);background:var(--surface);box-shadow:0 25px 100px #18002a30}dialog::backdrop{background:#1c0b2c55;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:22px 25px;border-bottom:1px solid var(--border)}.dialog-head h2{font-size:20px;margin:0;letter-spacing:-.5px}.dialog-body{padding:24px;max-height:70vh;overflow:auto}.dialog-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:17px 24px;border-top:1px solid var(--border)}.dialog-foot .left{margin-right:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:550}.field.full,.full{grid-column:1/-1}.field input,.field select,.field textarea{font-size:14px;font-weight:400;width:100%}.field textarea{resize:vertical;min-height:72px}.inline-check{display:flex;align-items:center;gap:9px;font-size:13px}.inline-check input{accent-color:var(--purple);width:16px;height:16px}.form-hint{font-size:12px;color:var(--muted);font-weight:400;margin:0}.form-note{background:var(--soft);border-radius:8px;padding:12px;font-size:12px;color:var(--muted);display:flex;gap:9px;align-items:flex-start}.form-note svg{color:var(--purple);flex-shrink:0}.form-error{color:#be2948;font-size:13px;margin:14px 0 0}.detail-title{font-size:27px;letter-spacing:-.7px;margin:14px 0 22px}.detail-row{display:flex;gap:16px;margin:21px 0;align-items:flex-start;font-size:14px}.detail-row>svg{color:var(--muted);margin-top:2px}.detail-row small{display:block;color:var(--muted);margin-top:4px;font-size:12px}.detail-description{border-top:1px solid var(--border);padding-top:18px;color:var(--muted);white-space:pre-wrap}.apps-list{display:grid;gap:10px}.app-link{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:8px;padding:14px}.app-link small{display:block;color:var(--muted)}#toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translateX(-50%) translateY(20px);background:var(--text);color:var(--surface);border-radius:9px;padding:12px 20px;z-index:100;opacity:0;transition:.2s;pointer-events:none;box-shadow:0 6px 30px #0002;font-size:13px}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}
body[data-theme=dark]{--bg:#111014;--surface:#19171d;--sidebar:#100e13;--text:#f3edf7;--muted:#b2a8ba;--border:#332d3c;--selected:#38254f;--soft:#20172c;--purple:#ac77f5}body[data-theme=magenta]{--bg:#1e0b27;--surface:#2b1535;--sidebar:#16051d;--text:#f6f0df;--muted:#c3b5c8;--border:#44264e;--selected:#442b64;--soft:#2b163b;--purple:#b47aff}body[data-theme=dark] .event,body[data-theme=magenta] .event{filter:brightness(.86)}body[data-theme=dark] .primary,body[data-theme=magenta] .primary{color:#170826}
@media(min-width:1600px){main{padding:32px 38px}.sidebar{width:260px}.app{margin-left:260px}.event .event-title{font-size:14px}.event .event-time,.event .event-location{font-size:12px}.day-heading>span{font-size:12px}.time-scroll{height:calc(100vh - 420px)}.period-controls h2{font-size:20px}}
@media(max-width:1150px){.sidebar{width:215px;padding-left:12px;padding-right:12px}.app{margin-left:215px}main{padding:24px 20px}.topbar{padding:0 20px}.calendar-toolbar{padding:12px}.period-controls h2{font-size:15px}.week-tag{display:none}.segmented button{padding:5px 8px}.view-controls{gap:5px}.top-actions{gap:12px}.event{left:3px;right:3px;padding:5px}.event .event-title{font-size:11px}.event .event-location{display:none}.mini-title{font-size:12px}.time-scroll{height:calc(100vh - 385px)}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);width:244px;box-shadow:15px 0 40px #0002}.sidebar.open{transform:translateX(0)}.app{margin-left:0}.mobile-menu{display:inline-flex;margin-right:10px}.topbar{justify-content:flex-start}.top-actions{margin-left:auto}.demo{display:none}.page-heading{margin-bottom:20px}.below-calendar>span:first-child{display:none}.time-scroll{min-height:360px}#toast{left:50%;width:max-content;max-width:90vw}.invite-list{grid-template-columns:1fr}}
@media(max-width:560px){.topbar{height:60px;padding:0 12px}.breadcrumb{gap:8px}.themes button{font-size:0;padding:7px}.themes button i{width:11px;height:11px}.top-actions{gap:5px}main{padding:23px 12px 12px}.page-heading{gap:10px;align-items:flex-start}h1{font-size:26px}.subtitle{font-size:12px;max-width:205px}.page-heading .eyebrow{font-size:9px;letter-spacing:.8px}.page-heading .primary{font-size:0;min-width:42px;padding:10px;margin-top:12px}.page-heading .primary svg{width:20px}.calendar-toolbar{gap:10px}.period-controls{width:100%;justify-content:center}.period-controls h2{font-size:16px}.view-controls{width:100%;justify-content:space-between}.segmented{flex:1;justify-content:space-around}.segmented button{padding:5px 12px}.calendar-footer{padding:10px;font-size:9px}.time-scroll{height:calc(100vh - 423px)}.week-header,.all-day-row,.time-grid{grid-template-columns:38px repeat(var(--days,7),minmax(0,1fr))}.hour-label{width:32px;font-size:9px}.day-heading{padding:10px 1px}.day-heading>span{font-size:8px;letter-spacing:0}.day-heading>button{font-size:17px;width:27px;height:27px;line-height:27px}.event .event-title{font-size:9px}.event .event-time{font-size:8px}.event{padding:3px 2px;border-left-width:2px;left:2px;right:2px;border-radius:4px}.all-day-event{font-size:8px;padding:3px 2px}.all-day-row>span{font-size:8px}.month-day{min-height:85px;padding:3px}.month-event{font-size:8px;padding:2px}.month-weekday{font-size:9px}.form-grid{gap:12px}.dialog-body{padding:18px}.dialog-head{padding:17px 18px}.dialog-foot{padding:14px 18px}.list-view{padding:0 12px}.list-day{gap:8px}.list-date{width:48px}.list-event{padding:10px;gap:8px;font-size:12px}.list-event>span:first-child{width:55px;font-size:10px}.below-calendar{font-size:9px}.zone{font-size:8px}}
.time-grid{height:1536px}.event .event-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-shrink:1}.event .event-time{flex-shrink:0;text-overflow:ellipsis;overflow:hidden}.month-day:last-child{border-right:0}.time-slot:focus-visible{outline:2px solid var(--purple);outline-offset:-2px}
.event .event-title{font-size:13px;line-height:1.25}.event .event-time{font-size:11px}.day-mode .event .event-title{font-size:14px}.day-mode .event .event-time,.day-mode .event .event-location{font-size:12px}.day-mode .event{padding:8px 12px}.themes button{min-height:28px}
@media(max-width:850px){#calendar{overflow-x:auto}.week-mode{min-width:760px}.month-grid{min-width:630px}.day-mode .hour-label{font-size:11px}.day-mode .day-heading>span{font-size:12px}.day-mode .day-heading>button{font-size:23px;width:36px;height:36px;line-height:36px}}

/* The shared workspace supplies its own vertical spacing. */
.side-scroll > .eyebrow:first-child{margin-top:0}
