@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--bg:#f6f7f9;--ink:#253332;--muted:#7b858a;--line:#e8ebed;--green:#277463;--pale:#eaf4ef;--sidebar:#192b29}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans','Noto Sans KR',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea{outline-offset:4px}button{border:0;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:hover{filter:brightness(.97)}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:var(--sidebar);color:#e9f0eb;display:flex;flex-direction:column;padding:32px 20px 20px}.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font:700 30px 'DM Sans',sans-serif;letter-spacing:1px}.brand-mark{height:32px;width:32px;background:#c6eac1;color:#1e3e32;border-radius:10px;display:grid;place-items:center;line-height:1;font-size:34px;padding-bottom:6px}.brand-sub{font-size:8px;color:#9bafaa;letter-spacing:1.5px;align-self:flex-end;margin-bottom:7px}.space-label{margin:37px 8px 16px;font-size:9px;letter-spacing:1.4px;color:#8b9f99;display:flex;justify-content:space-between}.space-label span{color:#b9c8c2}.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 14px;border-radius:8px;color:#aebeb8;margin-bottom:5px;font-size:13px}.nav-item>span{font-size:21px;line-height:20px}.nav-item.active{background:#2e4540;color:#ecf7eb}.nav-item small{margin-left:auto;opacity:.7}.list-heading{border-top:1px solid #31443e;margin:26px 7px 15px;padding-top:24px;font-size:12px;color:#bfcec7;display:flex;justify-content:space-between}.side-search{display:flex;align-items:center;gap:8px;background:#233833;border:1px solid #364a43;border-radius:7px;padding:0 10px;margin:0 4px 13px}.side-search span{font-size:23px;color:#9ab0a6}.side-search input{width:100%;padding:10px 0;background:none;border:0;color:#fff;font-size:12px}.side-search input::placeholder{color:#8ba299}.event-list{overflow-y:auto;flex:1}.event-link{width:100%;display:flex;gap:10px;text-align:left;padding:15px 8px;border-radius:8px}.event-link:hover{background:#253d36}.event-link .dot{margin-top:6px;flex-shrink:0}.event-link strong{font-size:12px;font-weight:500;line-height:1.6;display:block}.event-link small{display:block;color:#8fa79c;font-size:10px;margin-top:5px}.sidebar-bottom{border-top:1px solid #31443e;padding-top:20px;display:flex;align-items:center;gap:10px;font-size:12px;margin-top:15px}.sidebar-bottom small{display:block;font-size:10px;color:#8fa79c;margin-top:3px}.avatar{background:#40564c;border:1px solid #647b69;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:10px}.online-dot{margin-left:auto;background:#b7dbae;width:6px;height:6px;border-radius:50%}.workspace{margin-left:258px}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#fff;font-size:12px;color:var(--muted)}.topbar strong{font-weight:500;color:#4b585a}.slash{padding:0 15px;color:#ccd2d3}.top-actions{display:flex;align-items:center;gap:18px}.local-indicator{font-size:10px;color:#82968b}.subtle{font-size:11px;border:1px solid var(--line);padding:7px 10px;border-radius:6px}main{padding:30px 38px 0;max-width:1740px;margin:auto}.page-title{display:flex;justify-content:space-between;align-items:center;margin:8px 0 28px}.eyebrow{font-size:9px;letter-spacing:1.5px;font-weight:700;color:#9aa6a4}h1{font-size:28px;letter-spacing:-1.3px;margin:9px 0 8px;font-weight:600}p{color:var(--muted);line-height:1.7}.page-title p{font-size:12px;margin:0}.primary{background:var(--green);color:#fff;padding:12px 18px;border-radius:7px;font-size:12px;font-weight:500;white-space:nowrap}.secondary{background:#fff;border:1px solid #dae0e2;padding:10px 15px;border-radius:7px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat{border:1px solid var(--line);background:#fff;border-radius:10px;padding:19px 21px;position:relative}.stat-label{font-size:11px;color:#7c8887}.stat-icon{position:absolute;right:18px;top:17px;color:#91a298;font-size:18px}.stat-value{font-size:28px;font-weight:500;letter-spacing:-1px;margin:12px 0 5px}.stat-value small{font-size:11px;letter-spacing:0;color:#9aa5a0;margin-left:6px;font-weight:400}.stat-note{font-size:10px;color:#96a09c}.stat:nth-child(2){background:#edf4ee;border-color:#e1ebe1}.stat:nth-child(2) .stat-value{color:#37724f}.board{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.board-top{display:flex;justify-content:space-between;align-items:center;padding:21px 23px;border-bottom:1px solid var(--line);gap:15px;flex-wrap:wrap}.month-nav{display:flex;gap:12px;align-items:center}.month-nav h2{font-size:20px;letter-spacing:-.7px;margin:0 8px 0 0}.icon-button{font-size:24px;width:32px;height:32px;display:grid;place-items:center;border-radius:5px;color:#7c8985}.month-nav .icon-button{font-size:20px;border:1px solid var(--line);width:27px;height:27px}.today-btn{border:1px solid var(--line);padding:5px 9px;border-radius:5px;font-size:11px}.view-toggle{display:flex;background:#f1f3f4;border-radius:7px;padding:3px;gap:3px}.view-toggle button{padding:7px 13px;font-size:11px;border-radius:5px;color:#7e8986}.view-toggle button.active{background:#fff;box-shadow:0 1px 4px #0000000d;color:#30443a;font-weight:600}.board-filters{display:flex;align-items:center;gap:9px;padding:14px 23px;border-bottom:1px solid var(--line);flex-wrap:wrap}.board-filters select{border:1px solid var(--line);border-radius:6px;padding:6px 25px 6px 9px;font-size:11px;color:#68746e;background:#fff}.legend{display:flex;gap:13px;margin-left:auto;font-size:10px;color:#7c8885}.legend span{display:flex;align-items:center;gap:5px}.dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#6aa68c}.op{--accent:#569d7b;--tint:#eaf4ee;--dark:#43795e}.live{--accent:#6b97c2;--tint:#edf2fa;--dark:#527a9f}.sketch{--accent:#b99766;--tint:#faf3e8;--dark:#9a7846}.photo{--accent:#a58fb9;--tint:#f4eff8;--dark:#8b71a0}.dot{background:var(--accent,#76a38c)}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday{padding:13px 8px;text-align:center;font-size:10px;color:#8c9698;background:#fcfcfd;border-bottom:1px solid var(--line)}.weekday:first-child{color:#be8d86}.day{min-height:116px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 7px;position:relative;min-width:0}.day:nth-child(7n){border-right:0}.day.outside{background:#fafbfc}.day.outside .day-number{color:#c8cfd1}.day.is-today{background:#f7fbf7}.day-number{width:24px;height:24px;display:grid;place-items:center;font-size:11px;color:#7f8d8a;margin-bottom:7px}.day.is-today .day-number{background:#2e735a;color:#fff;border-radius:50%}.cal-event{display:block;width:100%;padding:6px 7px;margin:4px 0 0;border-left:2px solid var(--accent);border-radius:3px;background:var(--tint);color:var(--dark);text-align:left;font-size:10px;line-height:1.6;overflow:hidden}.cal-event strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:500}.cal-event small{font-size:9px;opacity:.8}.board-bottom{padding:13px 23px;font-size:10px;color:#9aa5a0;display:flex;justify-content:space-between}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;padding:23px}.event-card{border:1px solid var(--line);border-radius:9px;padding:21px;text-align:left;background:white;transition:box-shadow .15s,transform .15s}.event-card:hover{box-shadow:0 5px 20px #203e3210;transform:translateY(-2px)}.card-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7a8882}.status{padding:4px 8px;border-radius:4px;background:#eef4ef;color:#5e8068;font-size:9px}.event-card h3{font-size:15px;font-weight:600;margin:17px 0 12px;line-height:1.6}.event-card p{font-size:11px;margin:7px 0}.badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:15px}.badge{padding:4px 7px;border-radius:4px;background:var(--tint);color:var(--dark);font-size:9px}.card-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:18px;font-size:10px;color:#829388}.empty{grid-column:1/-1;text-align:center;padding:65px 15px;color:#84938a;line-height:2;font-size:12px}.empty strong{display:block;color:#4f6255;font-size:15px;margin-bottom:6px}.sidebar .empty{padding:20px 8px;font-size:11px;color:#92a59a}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.client-card{padding:24px;background:white;border:1px solid var(--line);border-radius:11px}.client-card h3{font-size:17px}.client-card p{font-size:12px}.client-card .secondary{margin-top:10px}.client-monogram{display:grid;place-items:center;border-radius:9px;background:#eaf0e8;color:#598366;width:40px;height:40px;font-weight:600}footer{margin-top:32px;padding:20px 0;border-top:1px solid var(--line);font-size:10px;color:#a2ada8;display:flex;justify-content:space-between}footer span{font-size:8px;letter-spacing:1.5px}dialog{border:0;padding:0;border-radius:14px;width:790px;max-width:calc(100vw - 30px);max-height:90vh;box-shadow:0 30px 120px #142f3540;color:var(--ink)}dialog::backdrop{background:#14262377;backdrop-filter:blur(3px)}dialog form{display:flex;flex-direction:column;max-height:90vh}.dialog-head{padding:23px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:20px;margin:6px 0 0;letter-spacing:-.5px}.dialog-body{padding:5px 28px 20px;overflow-y:auto}.dialog-foot{display:flex;gap:10px;padding:17px 28px;border-top:1px solid var(--line);background:#fafbfa}.spacer{flex:1}.form-section{padding:22px 0;border-bottom:1px solid var(--line)}.form-section:last-of-type{border:0}.form-section h3{font-size:14px;font-weight:600;margin:0 0 20px;display:flex;align-items:center;gap:8px}.form-section h3>span{font:500 11px 'DM Sans',sans-serif;color:#96aa9a}.form-section h3 small{font-size:10px;font-weight:400;margin-left:auto;color:#97a29b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#687a70}label em{font-style:normal;color:#588165}input,select,textarea{border:1px solid #dce3df;border-radius:6px;padding:10px 11px;background:white;color:#34483c;width:100%;font-size:12px;min-width:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #93baa5;outline-offset:1px}.inline-add{align-self:end}.work-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.work-choice{padding:13px 9px;border:1px solid #e1e7e3;border-radius:7px;flex-direction:row;align-items:center;gap:8px;font-size:12px}.work-choice:has(input:checked){border-color:#76a88a;background:#f0f7f0;color:#3d7450}.work-choice input{width:15px;accent-color:#397658}.tech-section{background:#f8faf9;border:1px solid #e7ece8;border-radius:9px;padding:20px;margin-top:18px}.tech-section h3{margin:0 0 18px;font-size:13px}.led-result{margin:15px 0;background:#eaf3eb;padding:17px;border-radius:7px;display:flex;align-items:center;justify-content:space-between}.led-result small{display:block;color:#7e9382;font-size:10px;margin-bottom:5px}.led-result strong{font:500 22px 'DM Sans',sans-serif;color:#397453}.screen-preview{width:80px;max-height:55px;background:#c3daca;border:3px solid #719982;display:grid;place-items:center;font-size:8px;color:#4c7557;min-height:8px}.helper{font-size:10px;color:#94a098;line-height:1.7}.integration{background:#fff;border:1px dashed #d7e0d9;border-radius:8px;padding:15px;margin-top:15px}.integration-title{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#647b69}.coming{font-size:9px;background:#f1f3f2;border-radius:4px;color:#8e9b93;padding:3px 6px}.upload{border:1px dashed #bdcdbf;background:#fff;border-radius:7px;padding:16px;margin-top:15px;font-size:11px}.upload input{margin-top:8px;font-size:10px}.file-row{display:flex;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid var(--line);font-size:11px}.file-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.file-row button{font-size:10px;color:#5f8267}.danger-text{font-size:11px;color:#b77570}.error{color:#b45f55;font-size:12px}.small-dialog{width:500px}.small-dialog .dialog-body{padding-top:25px}.toast{position:fixed;bottom:28px;left:calc(50% + 80px);transform:translateX(-50%) translateY(80px);background:#243e31;color:#fff;padding:13px 22px;border-radius:8px;font-size:12px;z-index:20;transition:transform .2s;box-shadow:0 8px 30px #0002;max-width:90vw}.toast.show{transform:translateX(-50%) translateY(0)}
@media(min-width:1600px){.day{min-height:145px}}@media(max-width:1150px){.sidebar{width:218px;padding-left:14px;padding-right:14px}.workspace{margin-left:218px}main{padding:25px 23px 0}.topbar{padding:0 23px}.cards,.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legend{display:none}.stat{padding:17px 14px}.stat-icon{right:12px}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px 18px;display:block}.brand{font-size:24px}.brand-mark{width:27px;height:27px;font-size:28px}.space-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;margin-top:15px;gap:8px}.nav-item{padding:9px 12px;margin:0}.list-heading{margin:14px 0 8px;padding-top:12px}.side-search{margin:0 0 8px}.event-list{display:flex;overflow-x:auto;max-height:94px}.event-link{min-width:200px;max-width:240px;padding:9px}.workspace{margin:0}.topbar{height:53px;padding:0 17px;font-size:10px}.local-indicator{display:none}main{padding:20px 15px 0}.page-title{margin-bottom:22px}.page-title h1{font-size:24px}.page-title p{font-size:10px}.eyebrow{font-size:8px}.stats{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px}.stat{padding:14px}.stat-value{font-size:25px;margin:8px 0}.board-top{padding:15px;gap:12px}.month-nav{gap:7px}.month-nav h2{font-size:17px}.view-toggle button{padding:7px 9px}.board-filters{padding:12px;gap:5px}.day{min-height:91px;padding:5px 2px}.day-number{font-size:10px;width:20px;height:20px}.cal-event{padding:4px 2px;border-left-width:2px}.cal-event strong{font-size:8px}.cal-event small{display:none}.cards,.client-grid{grid-template-columns:1fr}.cards{padding:15px}.dialog-body{padding:0 18px 20px}.dialog-head,.dialog-foot{padding:18px}.form-grid{gap:13px}.work-choices{grid-template-columns:1fr 1fr}.form-section h3 small{font-size:9px}.tech-section{padding:15px}footer span{display:none}.toast{left:50%}.board-bottom{padding:12px;font-size:9px}.primary{padding:11px 13px}.full{grid-column:1/-1}}
.board-filters select{width:auto;max-width:220px;min-width:125px}.toast{visibility:hidden}.toast.show{visibility:visible}.dialog-body{scroll-behavior:auto}@media(max-width:760px){.board-filters select{min-width:0;max-width:48%;flex:1}}
.brand{gap:10px}.brand-mark{font-size:20px;padding:0}.brand-word{font-size:19px;letter-spacing:.4px}.brand-word small{display:block;font-size:9px;letter-spacing:3.2px;color:#a5b9ad;margin-top:6px}.mybox-input{margin-top:15px}.mybox-card{display:flex;gap:18px;align-items:stretch;border:1px solid #dce7df;border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;background:#f8fbf8;margin-top:15px}.mybox-art{width:180px;min-height:110px;flex-shrink:0;display:grid;place-items:center;background:#eaf3ed}.mybox-art img{width:100%;height:100%;max-height:155px;object-fit:cover}.mybox-placeholder{font-size:42px;color:#69a07b;text-align:center}.mybox-placeholder small{display:block;font-size:10px;letter-spacing:2px}.mybox-card-text{min-width:0;padding:16px 14px 16px 0;display:flex;flex-direction:column;gap:8px}.mybox-card-text>small{font-size:9px;color:#5b9972;letter-spacing:1px}.mybox-card-text strong{font-size:13px;overflow-wrap:anywhere}.mybox-card-text>span{font-size:10px;color:#84988a;overflow-wrap:anywhere}.mybox-card-text b{font-size:11px;font-weight:500;color:#34774e;margin-top:auto}.thumb-upload{margin-top:12px;font-size:10px}.thumb-upload input{font-size:10px}.preview-dialog{width:1000px}.preview-body{height:65vh;overflow:auto;padding:20px;background:#f4f6f5}.file-image{display:block;max-width:100%;max-height:100%;object-fit:contain;margin:auto}.file-pdf{width:100%;height:100%;border:0;background:white}.file-text{margin:0;padding:25px;background:white;min-height:100%;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.9 'Noto Sans KR',sans-serif}.preview-dialog .dialog-foot{align-items:center}.preview-dialog h2{overflow-wrap:anywhere;max-width:90%}.file-row{flex-wrap:wrap}.file-row>span{min-width:120px}.file-row button{white-space:nowrap}@media(max-width:760px){.mybox-art{width:110px;min-height:100px}.mybox-card{gap:12px}.mybox-card-text strong{font-size:11px}.preview-body{padding:10px;height:62vh}.file-text{padding:14px;font-size:11px}.preview-dialog .dialog-foot{flex-wrap:wrap}.preview-dialog .dialog-foot .helper{width:100%}.led-result{gap:10px}.led-result strong{font-size:18px}.screen-preview{max-width:50px}}
.staff-config>label{max-width:240px}.equipment-checks{display:flex;gap:25px;margin:20px 0 8px}.equipment-checks label{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:12px}.equipment-checks input{width:17px;height:17px;accent-color:#347251}.staff-names{margin-top:18px}.event-view{width:900px;max-height:92vh}.event-view[open]{display:flex;flex-direction:column}.event-sheet{overflow:auto;padding:30px 38px;background:#fff}.sheet-title{padding:8px 0 25px;border-bottom:2px solid #dce9df}.sheet-title>span{font-size:10px;letter-spacing:2px;color:#69937b}.sheet-title h1{font-size:25px;line-height:1.5;letter-spacing:-.6px;overflow-wrap:anywhere}.sheet-title p{font-size:12px}.sheet-section{padding:22px 0;border-bottom:1px solid #e7ece8}.sheet-section h3{font-size:13px;color:#3e7957;margin:0 0 16px}.sheet-section dl{margin:0}.sheet-section dl>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:16px;padding:9px 0;font-size:12px;line-height:1.8}.sheet-section dt{color:#819287}.sheet-section dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#344c3b}.sheet-files{display:flex;flex-wrap:wrap;gap:8px;padding-top:20px}.sheet-files button{max-width:100%;overflow-wrap:anywhere;text-align:left}.sheet-link{display:inline-block;margin-top:20px;color:#397858;font-size:12px}.sheet-signature{margin-top:32px;color:#91a096;font-size:9px;letter-spacing:1.5px}@media(max-width:760px){.event-sheet{padding:18px}.sheet-title h1{font-size:20px}.sheet-section dl>div{grid-template-columns:92px minmax(0,1fr);gap:12px;font-size:11px}.event-view .dialog-foot{padding:13px;gap:7px}.event-view .dialog-foot button{font-size:11px;padding:10px}.equipment-checks{gap:15px}}
.report-brand{background:#111;color:white;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-30px -38px 30px}.report-brand img{width:260px;height:46px;object-fit:cover}.report-brand span{font-size:8px;letter-spacing:1.4px;color:#bbb}.sheet-title{border-bottom:2px solid #181818}.sheet-title>span{color:#777}.sheet-section h3{color:#191919;letter-spacing:1.5px;font-size:12px}.sheet-section dd{color:#242424}.sheet-signature{color:#888;letter-spacing:.2px}.sheet-section dt{color:#888}@media(max-width:760px){.report-brand{margin:-18px -18px 24px;padding:18px}.report-brand img{width:180px;height:32px}.report-brand span{display:none}.event-view .dialog-foot{flex-wrap:wrap}}
.report-brand{background:#000}

.report-brand{background:#fff;color:#111;justify-content:flex-start;gap:8px}.report-brand img{filter:invert(1)}.report-brand span{font-size:17px;letter-spacing:0;color:#222;white-space:nowrap}.sheet-signature{text-align:right}.equipment-checks{flex-wrap:wrap}@media(max-width:760px){.report-brand img{width:155px;height:27px}.report-brand span{display:block;font-size:10px}}

.report-brand{background:#000;color:#fff;align-items:flex-end}.report-brand img{filter:none}.report-brand span{color:#fff;line-height:1;padding-bottom:6px}.sheet-section:first-of-type{background:#f2f2ef;padding:22px;margin-top:22px;border:0}@media(max-width:760px){.report-brand span{padding-bottom:4px}}

.event-details-grid>label{min-width:0;justify-content:flex-end}.event-details-grid>label.full{justify-content:flex-start}.event-details-grid>label em{display:inline}.led-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;margin-top:16px;border-radius:8px;background:#eaf3eb}.led-summary>div{min-width:0;flex:1}.led-summary small{display:block;color:#728c77;font-size:10px;margin-bottom:7px}.led-summary strong{display:block;color:#397453;font-size:22px;font-weight:600}.led-summary .screen-preview{flex:none;width:80px}.event-details-grid .inline-add{align-self:end}@media(max-width:760px){.led-summary{gap:8px;padding:14px}.led-summary strong{font-size:17px}.led-summary .screen-preview{width:50px}}

/* Native date controls must fit their grid cells, including mobile Safari. */
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid>label,.form-grid>div{min-width:0}
input[type="date"],input[type="datetime-local"]{display:block;min-width:0;max-width:100%;width:100%;min-height:42px;overflow:hidden;appearance:none;-webkit-appearance:none}
input::-webkit-date-and-time-value{text-align:left;min-height:1em}
input::-webkit-datetime-edit{padding:0;min-width:0}
.led-summary,.led-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start;gap:20px}
.led-summary>div,.led-result>div{min-width:0}
.led-summary strong,.led-result strong{display:block;white-space:nowrap}
.led-summary .screen-preview,.led-result .screen-preview{grid-column:1/-1;justify-self:center;width:min(240px,100%,calc(180px * var(--led-aspect,1.8)));max-width:none;max-height:none;height:auto;min-height:0;font-size:12px}
.led-result>.helper{grid-column:1/-1}
@media(max-width:760px){
  .led-summary,.led-result{gap:16px;padding:14px}
  .led-summary .led-resolution,.led-result .led-resolution{font-size:clamp(13px,3.4vw,17px)}
  .led-summary small,.led-result small{font-size:9px;line-height:1.5}
  .event-view .dialog-foot .spacer{display:none}
  .event-view .dialog-foot{gap:8px}
  .event-view .dialog-foot button{padding:10px 12px;font-size:11px}
}

/* ZEITSTUDIO dashboard: monochrome identity, warm surfaces, mint accents. */
.sidebar-logo{mix-blend-mode:screen}
:root{--bg:#f5f4f0;--ink:#202522;--line:#e3e5df;--sidebar:#101512;--green:#286752}
.sidebar{background:#101512;padding-top:28px}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0 5px}
.sidebar-logo{display:block;width:208px;height:32px;object-fit:cover}
.sidebar-brand-caption{font-size:8px;font-weight:500;letter-spacing:2.4px;color:#a1b4a7}
.space-label{margin-top:30px}.nav-item.active{background:#263b30;color:#d0efd7}
.side-search{background:#1a251e;border-color:#344237}
.topbar{background:var(--bg);border-bottom:1px solid var(--line);height:64px}
main{padding-top:26px}
.page-title{margin:0 0 24px}.page-title h1{font-size:27px;letter-spacing:-1px}.page-title .eyebrow{font-size:8px;letter-spacing:2px;color:#6c8373}
.page-title .primary{background:#17271d;padding:13px 19px;border-radius:8px}
.stats{gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;margin-bottom:24px}
.stat{border:0;border-right:1px solid var(--line);border-radius:0;padding:20px 22px;background:#fff!important}.stat:last-child{border-right:0}
.stat-label{color:#57685d;font-size:11px}.stat-icon{color:#799884}.stat-value{font-size:34px;font-weight:500;margin:10px 0 4px;color:#17291c}.stat-note{color:#859087;font-size:9px}
.board{border-radius:12px;border-color:var(--line);box-shadow:0 5px 20px #17271d04}.board-top{padding:22px 24px}.board-top h2{font-size:19px;letter-spacing:-.5px}.board-filters{background:#fafbf8}.view-toggle{background:#eef1eb;border-radius:8px;padding:3px}.view-toggle .active{background:#fff;color:#233c2c;box-shadow:0 1px 4px #17271d12}
.weekday{font-size:9px;letter-spacing:1px;color:#849087;background:#fff}.day{background:#fff}.day.outside{background:#f8f9f6}.day.is-today{background:#eef5ee}.day-number{font-size:11px}.cal-event{border-radius:5px}.event-card{box-shadow:none;border-color:var(--line);border-radius:10px}
footer{color:#8a968c;font-size:10px}footer>span{font-size:8px;letter-spacing:2px}
@media(max-width:1100px){.dashboard-brand{gap:24px;padding:26px}.brand-date{padding-left:22px}.brand-date time{font-size:20px}.brand-baseline{gap:14px;font-size:10px}.stat{padding:18px 16px}}
@media(max-width:760px){
 .sidebar .brand{margin:0;flex:1;min-width:0}.sidebar-logo{width:160px;height:24px}.sidebar-brand-caption{font-size:7px;letter-spacing:1.7px}.sidebar .brand-word{display:none}
 .topbar{height:52px;background:var(--bg)}main{padding-top:18px}
 .page-title{gap:12px;align-items:center}.page-title h1{font-size:21px}.page-title p{font-size:10px;max-width:200px}.page-title .eyebrow{display:none}.page-title .primary{font-size:10px;padding:11px 13px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}.stat{padding:16px}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.stat-label{font-size:10px}.stat-value{font-size:28px}.stat-value small{font-size:9px}.stat-icon{font-size:15px;right:12px;top:14px}.stat-note{font-size:8px;line-height:1.5}
 .board-top{padding:16px}.board-top h2{font-size:16px}.weekday{font-size:8px;letter-spacing:0}
}

/* One brand header; the dashboard begins directly with event information. */
.sidebar .brand{gap:9px}
.sidebar-brand-details{margin:16px 5px 0;padding-top:15px;border-top:1px solid #344237}
.sidebar-services{display:flex;flex-wrap:wrap;align-items:center;gap:3px 7px;font-size:8px;line-height:1.8;letter-spacing:.75px;color:#b8cebe}
.sidebar-services>span{white-space:nowrap}.sidebar-services>span[aria-hidden]{color:#647d6c}
.sidebar-slogan{margin:8px 0 0;color:#8da594;font-size:10px;line-height:1.6}
.sidebar .space-label{margin-top:24px}
@media(max-width:760px){
 .sidebar{padding-top:22px}.sidebar .brand{gap:8px}
 .sidebar-brand-details{margin:12px 0 0;padding:0;border:0}
 .sidebar-services{font-size:8px;letter-spacing:.55px;gap:4px 7px}
 .sidebar-slogan{margin-top:5px;font-size:10px}
 .sidebar nav{margin-top:18px}
 .page-title{margin-top:0}
}

/* Brand stack follows the former hero, with one shared left edge. */
.sidebar-brand-block{margin:0 5px 0;min-width:0}
.sidebar-brand-block .sidebar-services{font-size:7px;letter-spacing:.6px;line-height:1.9;gap:0 5px;margin:0 0 16px;color:#a9beaf}
.sidebar-brand-block .brand{margin:0;gap:0;align-items:flex-start}
.sidebar-brand-block .sidebar-logo{width:184px;max-width:100%;height:auto;object-fit:contain;mix-blend-mode:normal}
.sidebar-brand-baseline{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:16px}
.sidebar-brand-baseline .sidebar-brand-caption{font-size:8px;letter-spacing:2px;line-height:1.5;color:#d2dfd5}
.sidebar-brand-baseline .sidebar-slogan{font-size:9px;margin:0;line-height:1.6;color:#8da594}
.sidebar-brand-location{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #344237;padding-top:14px;margin-top:16px;color:#a8baae;font-size:7px;letter-spacing:.6px}
.sidebar-brand-location time{font-size:10px;white-space:nowrap;letter-spacing:0;color:#e4ece6}
@media(max-width:760px){
 .sidebar-brand-block{margin:0;width:100%}
 .sidebar-brand-block .sidebar-services{font-size:7px;margin-bottom:15px;letter-spacing:.5px}
 .sidebar-brand-block .sidebar-logo{width:150px}
 .sidebar-brand-baseline{flex-direction:row;flex-wrap:wrap;gap:8px 20px;margin-top:15px}
 .sidebar-brand-baseline .sidebar-slogan{font-size:9px}
 .sidebar-brand-location{margin-top:16px;padding-top:13px;font-size:8px}
 .sidebar-brand-location time{font-size:11px}
}

.connection-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;margin-bottom:24px;border:1px solid #d5dfd7;border-radius:10px;background:#edf3ed;font-size:13px;line-height:1.6}.connection-banner[hidden]{display:none}.connection-banner button{white-space:nowrap}@media(max-width:600px){.connection-banner{align-items:flex-start;flex-direction:column}}

/* Keep touch form controls readable without iPhone focus zoom. */
@media (max-width:900px), (hover:none) {
 input,select,textarea,.side-search input,.board-filters select,.upload input,.thumb-upload input{font-size:16px}
}

.production-director{margin:16px 0 22px}.production-director[hidden],.director-name[hidden]{display:none}.director-name{margin-top:14px}.operating-options{margin-bottom:20px}.dot.youtube{background:#a7554f}.dot.zoom{background:#557eb4}.badge.youtube,.cal-event.youtube{background:#f7ebe9;color:#97514b}.badge.zoom,.cal-event.zoom{background:#eaf0f8;color:#486d9b}

.daily-schedule-day{border:1px solid #dce3df;border-radius:8px;padding:16px;margin:12px 0;min-width:0}.daily-schedule-day h4{margin:0 0 16px}.daily-schedule-day label{display:block;margin:12px 0}.daily-schedule-day input{display:block;max-width:100%;min-width:0;width:100%}

/* Shared event lanes make a multi-day production one continuous calendar bar. */
.calendar-week{grid-column:1/-1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));position:relative;min-width:0}
.calendar-week .day{min-height:max(116px,calc(44px + var(--event-lanes)*52px));padding-bottom:12px}
.week-events{position:absolute;inset:42px 0 auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:48px;row-gap:4px;pointer-events:none}
.week-events .cal-event{pointer-events:auto;width:auto;min-width:0;margin:0 5px;height:44px;align-self:start}
.week-events .cal-event small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.week-events .multi-day{margin-left:0;margin-right:0;border-radius:0;border-left:0;padding-left:10px}
.week-events .multi-day:not(.continues-before){margin-left:5px;border-radius:5px 0 0 5px;border-left:2px solid var(--accent)}
.week-events .multi-day:not(.continues-after){margin-right:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}
.led-count{display:block;margin:22px 0 16px;max-width:240px}.led-count input{display:block;width:100%;margin-top:8px}
.led-size-inputs{margin:16px 0}.led-size-inputs h4{font-size:13px;letter-spacing:1px;margin:0 0 12px}
.led-gallery{display:flex;flex-wrap:wrap;gap:16px;align-items:stretch;min-width:0}
.led-gallery>.led-summary,.led-gallery>.led-result{flex:1 1 230px;min-width:0;margin-top:16px}
.led-gallery .screen-preview{max-width:100%;aspect-ratio:var(--led-aspect,1.8)}
.led-gallery{background:#eaf3eb;border-radius:8px;margin-top:16px}
.led-gallery:empty{display:none}
.led-gallery>.led-summary,.led-gallery>.led-result{background:transparent;margin-top:0;border-radius:0}
@media(max-width:760px){.week-events .cal-event{padding:4px;margin-left:2px;margin-right:2px}.week-events .multi-day{margin-left:0;margin-right:0}.week-events .multi-day:not(.continues-before){margin-left:2px}.week-events .multi-day:not(.continues-after){margin-right:2px}.led-gallery>.led-summary,.led-gallery>.led-result{flex-basis:100%}}

/* Keep up to three LED diagrams together at every viewport width. */
.led-gallery{display:grid;grid-template-columns:repeat(var(--led-columns,1),minmax(0,1fr));gap:12px}
.led-multiple>.led-summary,.led-multiple>.led-result{grid-template-columns:minmax(0,1fr);gap:10px;padding:16px 12px;margin-bottom:0}
.led-multiple strong{font-size:18px;white-space:normal;overflow-wrap:anywhere}
.led-multiple .screen-preview{grid-column:1;width:min(240px,100%,calc(180px * var(--led-aspect,1.8)))}
.day[aria-disabled="false"]{cursor:pointer}.day[aria-disabled="false"]:hover{background:#f0f6f1}.day:focus-visible{outline:2px solid #277463;outline-offset:-3px}
.date-display{color:#397453}
@media(max-width:760px){.led-gallery{gap:6px}.led-multiple>.led-summary,.led-multiple>.led-result{padding:10px 6px;gap:8px}.led-multiple small{font-size:8px}.led-multiple strong,.led-multiple .led-resolution{font-size:11px;white-space:normal}.led-multiple .screen-preview{font-size:9px;border-width:2px}}

.top-actions a{text-decoration:none;white-space:nowrap;font-size:11px;padding:7px 10px}.top-actions{gap:8px}

.more-toggle{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;background:none;border:0;color:#397453;padding:8px 0;margin:0 0 24px;cursor:pointer;font:inherit}.more-toggle::before,.more-toggle::after{content:"";flex:1;height:1px;background:#a8b9b1}.more-toggle:focus-visible{outline:2px solid #397453;outline-offset:4px;border-radius:4px}#eventMoreDetails[hidden]{display:none}.dot.sound{background:#94784b}.dot.light{background:#9879b2}.dot.system{background:#58758e}.cal-event.sound,.badge.sound{background:#f3ecdf;color:#806738}.cal-event.light,.badge.light{background:#efe8f4;color:#7d5992}.cal-event.system,.badge.system{background:#e6edf3;color:#496b85}

/* Uniform dashed borders avoid heavy, broken corners in narrow one-day cells. */
.cal-event.tentative{border:1px dashed currentColor}.legend{flex-wrap:wrap}

.create-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.poster-dialog{width:650px}.poster-dialog .dialog-body{display:grid;gap:18px;max-height:65vh;overflow:auto}.poster-dialog input,.poster-dialog select,.poster-dialog textarea{font-size:16px}.poster-dialog h3{font-size:14px;margin:0}.poster-dialog #posterPreview{max-width:100%;max-height:250px;object-fit:contain}.poster-item{display:grid;gap:8px;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}.poster-item strong{overflow-wrap:anywhere}.poster-item span{color:#71817a}.poster-item button{justify-self:start}@media(max-width:760px){.create-actions{justify-content:flex-start;width:100%}.page-title{flex-wrap:wrap}}

.poster-services{border:0;padding:0;margin:0;min-width:0}.poster-services legend{font-size:12px;color:#71817a;margin-bottom:12px}.poster-work-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.poster-work-choices .work-choice{min-width:0;margin:0;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px}.poster-work-choices .work-choice:has(input:checked){background:var(--pale);border-color:var(--green)}.poster-work-choices input{width:18px;height:18px;flex-shrink:0;accent-color:var(--green)}@media(max-width:520px){.poster-work-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Show all three LED metrics on the same row above the diagram. */
.led-summary,.led-result{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr)}
.led-summary .led-diagonal,.led-result .led-diagonal{grid-column:auto}
.led-multiple>.led-summary,.led-multiple>.led-result{grid-template-columns:minmax(0,1fr)}
@media(max-width:760px){.led-gallery:not(.led-multiple)>.led-summary,.led-gallery:not(.led-multiple)>.led-result{gap:10px}.led-gallery:not(.led-multiple) small{min-height:2.8em}.led-gallery:not(.led-multiple) strong{font-size:clamp(13px,3.4vw,17px)}}

/* Main event artwork and cancellation state. */
.brief-main-poster{margin:22px 0 0;padding:16px;background:#f5f7f3;border-radius:8px;text-align:center}.brief-main-poster img{display:block;width:auto;max-width:100%;height:auto;max-height:480px;object-fit:contain;margin:auto}.main-poster-editor{padding-bottom:0}.main-poster-editor>label{margin-bottom:16px}.main-poster-editor img{display:block;max-width:100%;max-height:260px;object-fit:contain;margin:12px 0}.main-poster-editor img[hidden]{display:none}.cancelled-badge{background:#f2e6e3;color:#96574f}.cal-event.cancelled{background:#eee repeating-linear-gradient(135deg,transparent 0,transparent 7px,rgba(95,101,101,.065) 7px,rgba(95,101,101,.065) 8px);color:#626a69;border:1px dashed #929a98}.event-card.cancelled{background:#faf7f6;border-color:#d9c6c1}#cancelEventBtn{white-space:nowrap}@media(max-width:760px){.brief-main-poster{padding:10px;margin-top:18px}.brief-main-poster img{max-height:420px}.event-view .dialog-foot{justify-content:flex-start}}

/* Curved dashed dimension lines stay inside the diagram at every size. */
.led-summary .led-diagram,.led-result .led-diagram{grid-column:1/-1;justify-self:center;width:100%;max-width:376px;min-width:0}
.led-diagram svg{display:block;width:100%;height:auto;max-height:260px;font-family:Arial,sans-serif}
.led-multiple .led-diagram{grid-column:1}
.led-multiple>.led-summary,.led-multiple>.led-result{align-content:start}

.time-day-option{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:11px}.time-day-option input{width:15px;height:15px;accent-color:#397453}.time-day-option[hidden]{display:none}

.event-card .card-overview{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}.event-card.has-poster .card-overview{grid-template-columns:minmax(0,1fr) 68px}.event-card .card-copy{min-width:0}.event-card h3,.event-card p{overflow-wrap:anywhere}.event-card .card-poster{display:block;width:68px;height:96px;object-fit:contain;object-position:top center;border-radius:4px;background:#f3f5f2;justify-self:end}.event-card .card-top span{overflow-wrap:anywhere}
