:root{font-family:'Yu Gothic UI','Meiryo',sans-serif;color:#193f38;background:#f3f6f2;line-height:1.6}*{box-sizing:border-box}body{margin:0}header{padding:18px 4%;border-bottom:1px solid #d8e2da;display:flex;justify-content:space-between;align-items:center;background:white}.brand{font-weight:800;letter-spacing:.12em}.brand span{margin-left:14px;color:#63776d}.pill{font-size:12px;padding:5px 12px;background:#e7f1e9;border-radius:20px}main{max-width:1600px;margin:auto;padding:32px}.intro{margin-bottom:22px}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:#52786b;margin:0 0 8px}h1{font-size:36px;line-height:1.35;margin:8px 0 14px}h2{font-size:19px;margin:0 0 10px}p{margin:7px 0}.notice{border-left:4px solid #b68d38;background:#fff7e4;padding:14px 20px;margin-bottom:16px;font-size:12px;color:#57491f}.guide{background:#e6efe8;padding:16px 20px;border-radius:10px;font-size:13px;margin-bottom:20px}.viewerbar{background:#194e41;color:white;padding:18px 22px;display:flex;gap:18px;align-items:center;border-radius:12px;margin-bottom:22px}.viewerbar label{margin:0;white-space:nowrap}.viewerbar select{max-width:180px;margin:0}.viewerbar p{font-size:12px;margin:2px 0}.layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}.panel{background:white;border:1px solid #dbe3dc;border-radius:12px;padding:23px;box-shadow:0 5px 20px #173c340b}.creatorline{background:#f0f5ef;padding:10px;font-size:13px}.muted,footer,.hint{font-size:12px;color:#526d60}.hint{margin:4px 0 10px}label{display:block;font-weight:600;font-size:12px;margin-top:13px}label span{font-size:10px;color:#63756a;font-weight:400}input,select,textarea{width:100%;border:1px solid #b7c9bd;border-radius:6px;background:white;color:#193d38;padding:9px;font:inherit;font-size:13px;margin-top:4px}input[type=checkbox]{width:16px;height:16px;accent-color:#246c56;margin:0 9px 0 0}textarea{resize:vertical}.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}fieldset{border:1px solid #d5e0d7;border-radius:8px;padding:10px 12px;margin:18px 0 8px}legend{font-size:12px;font-weight:bold}.check{display:flex;align-items:center;margin:6px 0;font-weight:400}button{font:inherit;font-size:12px;font-weight:700;padding:9px 13px;border:1px solid #bccdc0;border-radius:6px;background:#f7f9f7;color:#274f46;cursor:pointer}button:hover{background:#e7f0e8}button.primary,.tabs button[aria-pressed=true]{background:#176052;color:white;border-color:#176052}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}#error{color:#a52c2c;font-size:12px}#status{font-size:12px;color:#315f4b;min-height:20px}.boardhead{display:flex;justify-content:space-between;align-items:center;gap:10px}.tabs{display:flex;gap:4px}.tabs button{min-width:44px}.navigation{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:15px 0}.navigation label{margin:0 0 0 6px}.navigation input{width:155px;margin:0}.filters{display:flex;gap:12px;align-items:end;padding:0 0 15px;border-bottom:1px solid #e0e8e1}.filters>div{flex:1}.filters label{margin:0}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;margin:12px 0 4px;color:#527061}.legend span:first-child{color:#176052}.legend span:last-child{color:#946020}#calendar{overflow:auto;max-height:650px;border:1px solid #d4ded5;border-radius:8px;background:white}.monthGrid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.weekday{text-align:center;background:#f1f5f0;font-size:12px;padding:8px;border-bottom:1px solid #d4ded5}.monthCell{min-height:126px;padding:7px;border-right:1px solid #e1e7df;border-bottom:1px solid #e1e7df;min-width:0}.monthCell.outside{background:#f5f6f3}.monthCell.selected{box-shadow:inset 0 0 0 2px #45836b}.dateButton{padding:2px 7px;background:transparent;border:0;font-size:12px}.monthEvent{width:100%;display:block;text-align:left;margin-top:4px;padding:5px;font-size:10px;overflow-wrap:anywhere;font-weight:500;background:#e1f0e5;color:#1c5445;border-color:#c1dbc9}.monthEvent.contact{background:#fff2d7;color:#75521b;border-color:#e4d1a9}.monthEvent small{display:block}.timeView{min-width:770px}.timeView.oneDay{min-width:280px}.dayHeads,.contactRow,.hourRow{display:grid;grid-template-columns:48px repeat(var(--days),minmax(0,1fr))}.dayHeads{position:sticky;top:0;z-index:3;background:#eff5ef}.dayHead{text-align:center;padding:9px 3px;border-left:1px solid #d7e3d7;font-size:12px}.dayHead.selected{background:#dbece1}.sideLabel{font-size:10px;color:#597260;padding:7px 3px}.contactRow{border-bottom:1px solid #cbd9cb;min-height:63px}.contacts{border-left:1px solid #dce5db;padding:4px;min-width:0}.contacts .monthEvent{margin-top:1px;margin-bottom:3px}.none{font-size:10px;color:#7b8e7f;padding:3px}.hours{position:relative;height:768px}.hourRow{position:absolute;width:100%;height:48px;border-top:1px solid #e1e8df}.hourLabel{font-size:10px;color:#627466;padding:1px 4px}.hourBlank{border-left:1px solid #e0e7dd}.eventLayer{position:absolute;top:0;bottom:0;left:48px;right:0;display:grid;grid-template-columns:repeat(var(--days),minmax(0,1fr));pointer-events:none}.dayLayer{position:relative;min-width:0}.timeEvent{position:absolute;padding:3px 5px;text-align:left;background:#def0e3;border:1px solid #8cbba1;border-left:3px solid #347b59;color:#183e2e;overflow:hidden;font-size:10px;line-height:1.35;pointer-events:auto;border-radius:4px;min-height:0;overflow-wrap:anywhere}.timeEvent strong,.timeEvent span{display:block}.timeEvent:focus,.timeEvent:hover{z-index:2;overflow:auto;background:#cbe7d5}.listTitle{font-size:14px;margin-top:22px}.listTitle span{font-size:11px;font-weight:400;display:block;color:#607669}.listItem{display:block;width:100%;text-align:left;padding:12px;margin-top:8px;background:white;border-left:4px solid #438573;font-weight:400}.listItem.contact{border-left-color:#ba8c42}.listItem strong{font-size:13px;display:block;overflow-wrap:anywhere}.listItem small{font-size:11px;color:#57725f;display:block}.empty{padding:20px;text-align:center;font-size:12px;color:#60766a}.reset{margin-top:20px}footer{padding:26px 0 10px}dialog{border:1px solid #b6c6bc;border-radius:12px;padding:26px;max-width:480px;width:calc(100% - 32px);color:#193f38}dialog::backdrop{background:#16372a80}.detailTitle{font-size:18px;overflow-wrap:anywhere;margin:12px 0}.detailText{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.detailMeta{font-size:13px;padding:10px 0;border-top:1px solid #dce6dc}.detailMeta p{margin:4px 0}:focus-visible{outline:3px solid #c28e30;outline-offset:3px}[hidden]{display:none!important}@media(max-width:1100px){.layout{grid-template-columns:1fr}.compose form{display:grid;grid-template-columns:120px 1fr;gap:0 14px;align-items:center}.compose form .hint,.compose form fieldset,.compose form .pair,.compose form .actions,.compose form #error{grid-column:1/-1}.compose form .pair{max-width:400px}.compose form fieldset{max-width:550px}.compose form textarea{margin-top:12px}.compose form label{margin:8px 0}.compose #shareChoices{display:flex;gap:15px;flex-wrap:wrap}.viewerbar{flex-wrap:wrap}.viewerbar div{flex-basis:100%}}@media(max-width:540px){main{padding:20px 14px}.panel{padding:17px}.intro br{display:none}h1{font-size:27px}.notice,.guide{padding:13px}.viewerbar{padding:15px;gap:10px}.viewerbar select{max-width:170px}.compose form{display:block}.compose form label{margin-top:13px}.compose form .pair label{margin-top:6px}.boardhead{align-items:start}h2{font-size:16px}.tabs button{min-width:36px;padding:8px}.filters{flex-wrap:wrap}.filters>div{flex-basis:40%}.filters>button{width:100%}.navigation input{width:150px}header{padding:15px}.brand{font-size:13px}.pill{font-size:10px}}
.monthEvent strong,.monthEvent span{display:block}button:disabled{opacity:.4;cursor:default}

.hourEnd{font-size:10px;color:#526b59;border-top:1px solid #c6d6c8;padding:2px 4px;background:#f1f5f0}.hoursNote{font-size:12px;color:#42634e;margin:10px 0}.hoursWarning{background:#fff2d7;border-left:3px solid #ba8c42;padding:10px;font-size:12px;color:#70501b}.hours{overflow:hidden}.timeEvent{padding-top:0;padding-bottom:0}

/* Allow the calendar panel to shrink below the grid content width. */
.board{min-width:0}
