:root{--bg:#f7f8fa;--ink:#24282f;--muted:#92969f;--line:#e9ebef;--red:#e65c50;--sidebar:238px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:13px -apple-system,BlinkMacSystemFont,"Noto Sans SC","PingFang SC",sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #eaa398;outline-offset:3px}button{border:0;background:none}svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sprite{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{padding:30px 20px 0;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;min-height:660px}.brand{display:flex;gap:11px;align-items:center;font-weight:750;font-size:26px;letter-spacing:1px;padding-left:7px}.brand-mark{display:grid;place-items:center;width:37px;height:39px;border-radius:11px;background:var(--red);color:white;box-shadow:0 3px 7px #e65c5026}.brand-mark svg{width:25px;height:25px;stroke-width:1.8}.brand small{display:block;font-size:8px;letter-spacing:3.3px;line-height:9px;margin:2px 0 0 1px;color:#777a81;font-weight:600}.workspace-label{font-size:8px;letter-spacing:1.6px;color:#a0a3aa;padding:24px 8px 18px}.side-nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:11px;padding:12px 12px;border-radius:7px;color:#81858d;text-align:left;font-size:12px}.nav-item.active{background:#fff0ed;color:#d85a4e;font-weight:600}.nav-item svg{width:17px;height:17px}.nav-item span{margin-left:auto;font-size:8px;letter-spacing:1px}.nav-item b{font-size:10px;font-weight:500;margin-left:auto;background:#f1f2f4;border-radius:4px;padding:1px 6px}.nav-item.active b{background:#ffe3dd}.mini-calendar{margin:24px 6px 20px}.mini-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.mini-title strong{font-size:12px;font-weight:600}.mini-title>span{display:flex}.icon-btn{width:29px;height:29px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#7e838c}.icon-btn:hover{background:#f1f2f5;color:#333}.icon-btn.small{width:22px;height:23px}.icon-btn.small svg{width:15px;height:15px}.mini-week,.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.mini-week{font-size:9px;color:#b0b3ba;padding-bottom:5px}.mini-grid{row-gap:2px}.mini-date{font-size:10px;height:23px;width:23px;margin:auto;border-radius:50%;position:relative}.mini-date.outside{color:#d1d3d8}.mini-date.today{background:var(--red);color:#fff}.mini-date.selected:not(.today){background:#edf0f5;color:#343941}.mini-date.has-event:after{content:"";width:3px;height:3px;background:#a2a6af;border-radius:50%;position:absolute;bottom:1px;left:10px}.mini-date.today:after{background:white}.mini-date:hover{background:#f1f2f4}.artist-section{border-top:1px solid var(--line);padding-top:18px;min-height:0;display:flex;flex-direction:column;flex:1}.section-label{display:flex;align-items:center;gap:6px;font-size:10px;color:#838892;padding:0 7px 11px}.section-label>span{font-size:9px;border-radius:4px;background:#f1f2f4;padding:1px 4px}.section-label>button{font-size:9px;color:#a4a7ad;margin-left:auto;padding:2px}.artist-list{overflow:auto;scrollbar-width:thin;scrollbar-color:#eee transparent;padding-bottom:8px}.artist-option{display:flex;gap:9px;align-items:center;cursor:pointer;padding:7px 8px;font-size:11px;border-radius:5px;line-height:17px}.artist-option:hover{background:#f7f8fa}.artist-option input{appearance:none;width:13px;height:13px;border:1px solid #d8dce1;border-radius:3px;margin:0;flex-shrink:0;background:#fff}.artist-option input:checked{border-color:var(--artist-color);background:var(--artist-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 8 3 3 5-6' stroke='white' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}.artist-option .count{margin-left:auto;color:#b4b7bf;font-size:9px}.sidebar-foot{display:flex;gap:9px;align-items:center;border-top:1px solid var(--line);padding:16px 4px 18px;margin-top:8px;font-size:9px;color:#92969f}.sidebar-foot small{display:block;font-size:8px;color:#b5b8bf;margin-top:4px}.tiny-disc{width:27px;height:27px;border:1px solid #e6e8ec;border-radius:50%;display:grid;place-items:center;font-size:13px;color:#8c9098}main{min-width:0}.topbar{height:72px;padding:0 36px;border-bottom:1px solid var(--line);background:#ffffffa0;display:flex;justify-content:space-between;align-items:center}.topbar-left,.topbar-right{display:flex;gap:16px;align-items:center}.topbar-left{font-size:11px}.breadcrumb{color:#a0a3ab}.breadcrumb-slash{color:#d1d4d9}.topbar-left strong{font-weight:500}.topbar-right{gap:19px}.timezone{color:#9b9fa8;font-size:10px;display:flex;align-items:center;gap:6px}.timezone i{width:5px;height:5px;background:#76a789;border-radius:50%}.info-i{font-family:Georgia,serif;border:1.4px solid #9ca1aa;border-radius:50%;width:16px;height:16px;font-size:11px;line-height:15px}.user-avatar{background:#eeeae4;color:#8a8073;border:3px solid white;box-shadow:0 0 0 1px #e8e8e8;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:11px}.main-content{padding:33px 36px 0;max-width:1680px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.eyebrow{font-size:8px;letter-spacing:2.1px;color:#9da2ab;margin-bottom:10px;font-weight:600}h1{font-size:27px;letter-spacing:1px;line-height:1.5;font-weight:650;margin:0}h1 span{color:var(--red)}.page-heading p{font-size:11px;color:#9da1aa;margin:9px 0 0}.export-btn{display:flex;align-items:center;gap:7px;background:white;border:1px solid #e1e4e9;padding:10px 13px;border-radius:7px;font-size:10px;box-shadow:0 2px 2px #24282f02}.export-btn svg{width:15px;height:15px}.export-btn:hover{border-color:#b8bdc5}.search-row{display:flex;gap:10px;margin-bottom:22px}.search-box{background:white;border:1px solid #e5e8ed;border-radius:8px;height:42px;display:flex;align-items:center;padding:0 13px;gap:10px;max-width:456px;flex:1}.search-box svg{width:17px;height:17px;color:#a1a6b0}.search-box input{border:0;outline:none;min-width:0;flex:1;background:transparent;font-size:11px;height:100%;color:var(--ink)}.search-box input::placeholder{color:#a8adb6}.search-box kbd{font-size:10px;color:#a7adb6;background:#f8f9fa;border:1px solid #eceef1;border-radius:4px;padding:1px 6px}.city-filter{border:1px solid #e5e8ed;border-radius:8px;height:42px;display:flex;align-items:center;gap:6px;background:white;padding:0 11px}.city-filter svg{width:15px;height:15px;color:#969ca6}.city-filter select{border:0;outline:none;background:white;max-width:140px;min-width:95px;font-size:11px;color:#6f7580}.clear-filter{font-size:10px;color:var(--red)}.calendar-panel{background:#fff;border:1px solid #e2e6ec;border-radius:11px;overflow:hidden;box-shadow:0 2px 5px #24282f02}.calendar-toolbar{padding:21px 22px 11px;display:flex;justify-content:space-between;align-items:center}.month-navigation{display:flex;gap:14px;align-items:center}.month-navigation h2{font-size:22px;font-weight:600;margin:0;letter-spacing:.1px}.month-navigation h2 span{font-weight:400;color:#a5abb5;font-size:13px;margin-left:6px}.arrow-group{display:flex;gap:1px}.today-btn{padding:5px 10px;border:1px solid #e3e6eb;border-radius:5px;font-size:10px;color:#6d737e}.today-btn:hover{background:#f5f6f8}.jump-label{display:flex;max-width:20px;overflow:hidden;color:#b3b8c1}.jump-label input{width:20px;border:0;outline:0;padding:0;font-size:0;color:transparent;background:transparent;cursor:pointer}.jump-label input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.45;font-size:15px;padding:0}.view-switch{display:flex;background:#f3f4f6;padding:3px;border:1px solid #eceef1;border-radius:6px}.view-switch button{display:flex;align-items:center;gap:6px;font-size:10px;border-radius:4px;padding:6px 11px;color:#8a9099}.view-switch button svg{width:13px;height:13px}.view-switch button.active{background:white;color:#4e545e;box-shadow:0 1px 3px #1b243017}.calendar-caption{padding:0 23px 18px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#a1a6af}.calendar-caption b{font-weight:500;color:#68717d}.calendar-caption button{color:var(--red);font-size:9px;margin-left:8px;padding:0}.month-note{display:flex;align-items:center;gap:5px}.month-note i{width:4px;height:4px;background:#8bb69b;border-radius:50%}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fdfdfe}.weekdays>span{padding:12px 13px;font-size:10px;color:#8e949f}.weekdays small{font-size:8px;margin-left:5px;color:#b0b5be}.weekdays>span:nth-last-child(-n+2){color:#c38a81}.weekdays>span:nth-last-child(-n+2) small{color:#cfb5b0}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.day-cell{min-height:112px;min-width:0;position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 6px 7px;transition:background .12s}.day-cell:nth-child(7n){border-right:0;background:#fefdfd}.day-cell:nth-child(7n-1){background:#fefdfd}.day-cell.outside{background:#fafbfc}.day-cell.outside .day-number{color:#c5cad2}.day-cell.selected{background:#fffcfa;box-shadow:inset 0 0 0 1px #f0c7bd}.day-top{display:flex;align-items:center;justify-content:space-between;padding:0 4px;margin-bottom:7px;height:22px}.day-number{width:23px;height:23px;display:grid;place-items:center;font-size:11px;color:#727986;border-radius:50%;padding:0}.day-number:hover{background:#f0f1f4}.day-number.today{background:var(--red);color:white}.day-tag{font-size:8px;color:#db8e82}.day-count{font-size:8px;color:#c1c5cc}.event-chip{display:block;text-align:left;width:100%;padding:4px 5px;border-radius:4px;background:var(--tint);border-left:2px solid var(--color);margin-top:4px;overflow:hidden;color:var(--text-color);transition:filter .15s}.event-chip:hover{filter:brightness(.97)}.event-chip strong{display:block;font-size:9px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.event-chip span{display:flex;gap:4px;font-size:8px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.76}.event-chip span b{font-weight:400;overflow:hidden;text-overflow:ellipsis}.more-events{color:#9299a5;font-size:8px;padding:4px 5px}.calendar-bottom{padding:12px 17px;display:flex;justify-content:space-between;align-items:center;font-size:8px;color:#adb2ba}.calendar-bottom>span{display:flex;gap:6px;align-items:center}.calendar-bottom svg{width:11px;height:11px}.legend-dot{width:5px;height:5px;border-radius:50%;background:#d8b2a8}.below-calendar{display:flex;gap:25px;margin-top:25px}.upcoming{min-width:0;flex:1}.upcoming-heading{display:flex;align-items:center;gap:12px;margin-bottom:13px}.upcoming-heading h3{font-size:12px;font-weight:600;margin:0}.upcoming-heading>span{font-size:9px;color:#abb0b8}.upcoming-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.upcoming-card{border:1px solid #e5e8ed;border-radius:8px;background:#fff;padding:14px 12px;text-align:left;display:flex;gap:11px;align-items:center;min-width:0}.upcoming-card:hover{border-color:#c5cbd4;transform:translateY(-1px)}.date-tile{background:var(--tint);color:var(--color);width:38px;height:44px;flex-shrink:0;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:6px}.date-tile small{font-size:7px;letter-spacing:.5px;line-height:12px}.date-tile b{font-size:19px;line-height:23px;font-weight:600}.card-copy{min-width:0;flex:1}.card-copy strong{font-size:10px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:550}.card-copy>span{display:block;font-size:8px;color:#a4a9b2;margin-top:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-copy svg{width:9px;height:9px;vertical-align:-1px}.upcoming-card>.card-arrow{width:13px;height:13px;color:#b1b6bf}.discovery-note{display:flex;position:relative;flex-direction:column;justify-content:center;background:#eeeee9;border:1px solid #e7e7df;border-radius:8px;min-width:198px;padding:16px 18px;overflow:hidden;color:#888c7f;margin-top:27px}.discovery-note>span:not(.note-symbol){font-size:10px;line-height:1.8;position:relative}.discovery-note small{font-size:6px;letter-spacing:1.1px;margin-top:7px}.note-symbol{font-size:73px;position:absolute;right:13px;top:-10px;color:#e0e1d8;transform:rotate(-16deg)}footer{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:27px 0 0;border-top:1px solid #e8ebef;padding:17px 0 20px;color:#aeb3bc;font-size:8px}footer i{font-style:normal;margin:0 8px}footer button{font-size:8px;color:#9da4ae;display:flex;align-items:center;gap:4px}footer svg{width:11px;height:11px}.list-view{border-top:1px solid var(--line);min-height:380px;padding:7px 22px 20px;max-height:680px;overflow:auto}.list-month{position:sticky;top:-7px;background:#fff;padding:15px 0 10px;font-size:11px;font-weight:600;z-index:1;border-bottom:1px solid #eef0f3}.event-row{display:flex;align-items:center;gap:15px;padding:15px 2px;border-bottom:1px solid #eff1f4}.event-row .row-main{flex:1;min-width:0;cursor:pointer}.row-artist{font-size:12px;font-weight:600;display:block}.row-tour{font-size:9px;color:#a1a7b1;margin-top:5px;display:block}.row-location{width:180px;font-size:10px;color:#777e89}.row-location small{display:block;font-size:9px;color:#a9afb7;margin-top:4px}.row-time{width:90px;color:#8b929d;font-size:10px}.star-btn{width:30px;height:30px;color:#b0b6bf;display:grid;place-items:center;border-radius:6px}.star-btn:hover{background:#f6f6f7}.star-btn.saved{color:#d8a555}.star-btn.saved svg{fill:#f7e3bd}.empty-state{text-align:center;padding:75px 15px;color:#a0a6b0}.empty-state svg{width:32px;height:32px;color:#c7ccd4}.empty-state h3{color:#656e7a;font-size:14px;font-weight:500;margin:16px 0 9px}.empty-state p{font-size:11px;line-height:1.9;margin:0}.empty-state button{font-size:10px;color:var(--red);border:1px solid #ebc5be;border-radius:5px;padding:7px 13px;margin-top:16px}.empty-upcoming{grid-column:1/-1;color:#a0a6b0;font-size:10px;padding:22px 0}.modal-overlay{position:fixed;inset:0;background:#1b243a40;backdrop-filter:blur(4px);z-index:50;display:flex;justify-content:center;align-items:center;padding:24px}.modal{position:relative;background:#fff;border:1px solid #fff;border-radius:16px;box-shadow:0 20px 90px #17243730;max-width:500px;width:100%;max-height:90vh;overflow:auto;padding:30px;outline:0}.modal-close{position:absolute;top:15px;right:15px}.modal-eyebrow{font-size:9px;letter-spacing:1.5px;color:var(--color,var(--red));margin:6px 0 12px}.modal h2{font-size:23px;line-height:1.4;margin:0 25px 9px 0;font-weight:650}.modal-tour{font-size:12px;line-height:1.8;color:#959ca6;margin-bottom:26px}.detail-line{display:flex;gap:13px;margin:20px 0;color:#7d8590;font-size:11px;line-height:1.7}.detail-line>svg{margin-top:2px;color:#a5acb6}.detail-line strong{font-size:13px;font-weight:500;color:#49515e;display:block}.detail-line small{display:block;color:#a5acb6;font-size:10px;margin-top:3px}.detail-badge{display:inline-block;background:#f1f6f2;color:#6b9678;border:1px solid #e6eee8;padding:4px 7px;border-radius:4px;font-size:9px;margin-top:4px}.modal-actions{display:flex;gap:9px;margin-top:25px;flex-wrap:wrap}.primary-btn,.secondary-btn{padding:11px 13px;border-radius:6px;font-size:11px;display:inline-flex;align-items:center;gap:6px}.primary-btn{background:var(--red);color:white}.primary-btn:hover{background:#d95045}.secondary-btn{border:1px solid #e1e5eb;background:white;color:#737c88}.modal-actions svg{width:15px;height:15px}.source-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:25px;font-size:10px;color:#89939f}.source-link:hover{color:var(--red)}.source-link svg{width:14px;height:14px}.source-note{font-size:9px;color:#afb5be;line-height:1.8;margin:12px 0 0}.about-text{font-size:12px;line-height:2;color:#8a929e}.about-text b{color:#545e6b;font-weight:500}.artist-sources{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.artist-sources a{font-size:10px;color:#858e9a;padding:7px;background:#f7f8fa;border-radius:5px;display:flex;justify-content:space-between;align-items:center}.artist-sources svg{width:11px;height:11px}.day-list .event-row{gap:10px}.day-list .row-location{width:105px}.day-list .date-tile{display:none}.day-list .row-time{display:none}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);z-index:100;background:#323c49;color:white;padding:12px 20px;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;box-shadow:0 5px 20px #28394d20}.toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-menu,.sidebar-scrim{display:none}
@media(min-width:1500px){:root{--sidebar:250px}.main-content{padding-top:40px}.day-cell{min-height:134px}.sidebar{padding-left:23px;padding-right:23px}.artist-option{padding-top:8px;padding-bottom:8px}}
@media(max-width:1200px){:root{--sidebar:212px}.sidebar{padding-left:14px;padding-right:14px}.main-content{padding-left:24px;padding-right:24px}.topbar{padding:0 24px}.day-cell{min-height:104px;padding-left:4px;padding-right:4px}.event-chip strong{font-size:8px}.event-chip span{font-size:7px}.discovery-note{display:none}.weekdays small{display:none}.month-navigation{gap:8px}.month-navigation h2{font-size:20px}.calendar-toolbar{padding-left:16px;padding-right:16px}.month-note{display:none}.upcoming-card{gap:7px;padding:12px 8px}.card-copy strong{font-size:9px}}
@media(max-width:900px){:root{--sidebar:190px}.sidebar{padding-left:10px;padding-right:10px}.main-content{padding:27px 18px 0}h1{font-size:23px}.page-heading{margin-bottom:22px}.export-btn{padding:9px;font-size:9px}.day-cell{min-height:100px}.event-chip{padding-left:3px;padding-right:2px}.month-navigation{gap:5px}.month-navigation h2 span{display:none}.view-switch button{padding:6px 8px}.view-switch svg{display:none}.calendar-toolbar{padding:17px 12px 10px}.calendar-caption{padding-left:13px;padding-bottom:14px}.upcoming-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.upcoming-card:nth-child(3){display:none}.calendar-bottom>span:last-child{display:none}.artist-option{font-size:10px}.section-label{padding-left:5px}.timezone{display:none}.brand{font-size:23px}.brand-mark{width:34px;height:36px}.row-location{width:115px}.row-time{display:none}}
@media(max-width:680px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;width:238px;z-index:40;transform:translateX(-100%);transition:transform .2s;min-height:0;height:100dvh;padding-left:20px;padding-right:20px}.sidebar.open{transform:translateX(0)}.sidebar-scrim.open{display:block;position:fixed;inset:0;z-index:39;background:#1b243a40;backdrop-filter:blur(2px)}.mobile-menu{display:flex}.topbar{height:58px;padding:0 16px}.topbar-left{gap:10px}.topbar-right{gap:12px}.main-content{padding:25px 14px 0}.page-heading{align-items:flex-start;margin-bottom:23px}.eyebrow{font-size:7px;letter-spacing:1.7px;margin-bottom:9px}h1{font-size:21px;letter-spacing:.4px}.page-heading p{font-size:10px}.export-btn{font-size:0;padding:8px;margin-top:22px}.export-btn svg{width:16px;height:16px}.search-row{gap:7px;margin-bottom:17px;flex-wrap:wrap}.search-box{height:40px;min-width:180px}.search-box input{font-size:10px}.search-box kbd{display:none}.city-filter{height:40px;padding:0 8px;gap:3px}.city-filter select{font-size:10px;min-width:75px;max-width:100px}.city-filter svg{width:13px}.calendar-panel{border-radius:8px}.calendar-toolbar{padding:16px 10px 11px}.month-navigation h2{font-size:18px}.month-navigation{gap:4px}.arrow-group{gap:0}.arrow-group .icon-btn{width:23px}.today-btn{font-size:9px;padding:4px 7px}.jump-label{display:none}.view-switch button{font-size:9px;padding:5px 7px}.calendar-caption{font-size:8px;padding:0 11px 13px;line-height:1.7;min-height:26px}.calendar-caption button{font-size:8px}.weekdays>span{font-size:9px;padding:10px 0;text-align:center}.day-cell{min-height:101px;padding:6px 2px 4px}.day-top{padding:0 2px;margin-bottom:3px;height:20px}.day-number{font-size:10px;width:21px;height:21px}.day-tag{display:none}.day-count{font-size:7px}.event-chip{border-left-width:2px;border-radius:2px;margin-top:3px;padding:3px 2px}.event-chip strong{font-size:7px;line-height:1.6;font-weight:500}.event-chip span{font-size:6px;gap:1px}.event-chip span b{display:none}.more-events{font-size:7px;padding:3px 1px}.calendar-bottom{padding:10px;font-size:7px}.below-calendar{margin-top:22px}.upcoming-heading{gap:10px}.upcoming-heading h3{font-size:11px}.upcoming-heading>span{font-size:8px}.upcoming-cards{gap:7px}.upcoming-card{padding:11px 8px;gap:7px}.upcoming-card>.card-arrow{display:none}.date-tile{width:34px;height:39px}.date-tile b{font-size:18px}.card-copy>span{font-size:7px}.card-copy strong{font-size:9px}footer{margin-top:22px;padding-top:15px;gap:10px;flex-wrap:wrap;font-size:7px}footer button{font-size:7px}footer>span:last-child{width:100%}.list-view{padding:5px 12px 15px}.event-row{gap:10px}.row-artist{font-size:11px}.row-tour{font-size:8px}.row-location{width:85px;font-size:9px}.row-location small{font-size:8px}.modal-overlay{padding:15px}.modal{padding:25px 22px;border-radius:12px}.modal h2{font-size:21px}.modal-actions{gap:7px}.primary-btn,.secondary-btn{font-size:10px;padding:10px}.artist-sources{gap:6px}.artist-sources a{font-size:9px}.toast{font-size:11px;max-width:90vw;width:max-content}.empty-state{padding:65px 10px}.clear-filter{font-size:9px}.day-list .row-location{width:90px}}
@media(min-width:901px){.event-chip strong{font-size:10px}.event-chip span{font-size:9px}}
@media(max-width:900px){.month-navigation h2 span{display:inline;font-size:11px;margin-left:2px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.year-filter select{min-width:77px}.year-notice{display:flex;align-items:center;gap:12px;border:1px solid #e6e8dd;background:#f4f5ee;border-radius:8px;padding:13px 16px;margin:-5px 0 20px;color:#7c846b}.year-notice-icon{font-size:18px;border:1px solid #dde1d0;background:#fff9;width:37px;height:37px;border-radius:8px;display:grid;place-items:center;font-weight:550}.year-notice>div{flex:1}.year-notice strong{font-size:11px;font-weight:550;color:#747d63}.year-notice p{font-size:9px;margin:5px 0 0;line-height:1.7;color:#9ba28d}.year-notice>button{font-size:9px;color:#818b6d;display:flex;gap:5px;align-items:center;white-space:nowrap}.year-notice svg{width:13px;height:13px}.coverage-list{margin-top:20px}.coverage-row{display:flex;gap:15px;align-items:flex-start;border-top:1px solid var(--line);padding:15px 0}.coverage-row>div{flex:1}.coverage-row strong{display:block;font-size:12px;font-weight:550}.coverage-status{display:inline-block;font-size:9px;color:#a4aab3;margin-top:7px}.coverage-status.confirmed{color:#73907b}.coverage-row p{color:#a3aab4;font-size:10px;line-height:1.8;margin:6px 0 0}.pending-link{font-size:10px;display:block;color:#9c8b67;line-height:1.8;margin-top:8px}.pending-link small{font-size:9px;display:block;color:#adb0b5}
@media(max-width:900px){.search-row{flex-wrap:wrap}.search-box{min-width:220px}.year-notice{padding:11px}.year-notice strong{font-size:10px}.year-notice p{font-size:8px}}
@media(max-width:680px){.search-box{flex-basis:100%;max-width:none}.year-notice{gap:9px}.year-notice-icon{width:30px;height:33px;font-size:16px}.year-notice>button{font-size:8px}.year-notice strong{font-size:10px}.year-notice p{font-size:8px}.year-filter select{min-width:80px}.search-row .clear-filter{margin-left:auto}.calendar-caption{flex-wrap:wrap}.calendar-caption button{margin-top:3px}}
.artist-row{display:flex;align-items:center;min-width:0}.artist-row>.artist-option{flex:1;min-width:0;padding-right:2px}.artist-row .artist-option>span:not(.count){overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.artist-official{display:flex;align-items:center;justify-content:center;width:21px;height:27px;flex-shrink:0;border-radius:4px;color:#acb2ba}.artist-official svg{width:12px;height:12px}.artist-official:hover{background:#fff0ed;color:var(--red)}.special-calendars{border-top:1px solid var(--line);padding:13px 7px 0;flex-shrink:0}.special-title{font-size:9px;color:#a0a6b0;margin-bottom:7px}.special-option{display:flex;gap:9px;align-items:center;cursor:pointer;font-size:10px;color:#7d8690;padding:7px 0}.special-option input{appearance:none;width:13px;height:13px;border:1px solid #d8dce1;border-radius:3px;margin:0;background:white}.special-option input:checked{background-color:var(--artist-color);border-color:var(--artist-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 8 3 3 5-6' stroke='white' stroke-width='1.5' fill='none'/%3E%3C/svg%3E")}.festival-directory-btn{display:flex;gap:6px;align-items:center;margin:7px 7px 0;padding:5px 0;color:#939ca7;font-size:9px;flex-shrink:0}.festival-directory-btn svg{width:12px;height:12px}.festival-directory-btn:hover{color:var(--red)}.author-footer{display:flex;align-items:center;justify-content:center;gap:12px 22px;flex-wrap:wrap;padding:0 0 22px;font-size:10px;color:#939ca6;line-height:1.9}.author-footer strong{color:#747e8a;font-weight:500}.author-footer a{display:inline-flex;gap:3px;align-items:center}.author-footer svg{width:12px;height:12px}.author-footer a:hover{color:var(--red)}.directory-entry{padding:16px 0;border-top:1px solid var(--line)}.directory-entry>strong{font-size:12px;font-weight:550}.directory-entry p{font-size:10px;color:#9aa3ae;line-height:1.8;margin:6px 0 10px}.directory-links{display:flex;gap:13px;font-size:10px;color:#8c9b83}.directory-links a{display:flex;align-items:center;gap:4px}.directory-links svg{width:11px;height:11px}.activity-end{color:#959eaa;font-size:10px;line-height:1.8}.broadcast-badge{color:#ba7474;font-size:9px;margin:2px 0 15px}
@media(max-width:680px){.author-footer{font-size:9px;gap:5px 14px;padding:2px 8px 24px}.author-footer strong{width:100%;text-align:center}.artist-row>.artist-option{font-size:10px}.special-calendars{padding-top:10px}.special-option{padding:5px 0}.festival-directory-btn{font-size:8px}}

.venue-copy{font-size:10px;color:#9a8b76;padding:0}.venue-copy:hover{color:var(--red)}
