:root{--bg-app:#d7ead9;--bg-panel:#eef6ee;--bg-header:#cfe6f2;--bg-titlebar:#e8f0e8;--green-btn:#3f7a3f;--green-btn-light:#6fae6f;--teal-text:#1f6f6f;--blue-link:#22c;--table-border:#69a;--table-head:#bfe0d8;--accent-pink:#f6a;--btn-face:#f2f2ec;--btn-border:#888;--danger:#c22;font-size:15px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg-app);color:#111;font-family:Hiragino Kaku Gothic ProN,MS PGothic,Yu Gothic,Meiryo,sans-serif}main.container{max-width:1280px;margin:0 auto;padding:12px 16px 48px}.win{background:var(--bg-panel);border:2px solid #7a9a7a;border-radius:4px;margin-bottom:16px;box-shadow:2px 3px 6px #00000040}.win>.win-title{background:linear-gradient(#f4faf4,#d8ecd8);border-bottom:1px solid #9ab89a;justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;font-weight:700;display:flex}.win>.win-body{padding:12px}.menu-btn{text-align:center;color:#111;cursor:pointer;background:#fdfdf8;border:2px solid #444;border-radius:2px;width:100%;margin:0;padding:22px 10px;font-size:22px;text-decoration:none;display:block;box-shadow:inset -2px -2px #bbb,2px 2px 3px #00000026}.menu-btn:hover{background:#ffffe8}.oval-btn{color:#111;cursor:pointer;text-align:center;background:#fff;border:4px solid #3b6fd4;border-radius:999px;padding:8px 22px;font-size:18px;font-weight:700;text-decoration:none;display:inline-block}.oval-btn:hover{background:#eef4ff}.oval-btn.small{border-width:3px;padding:5px 14px;font-size:14px}.soft-btn{color:#333;cursor:pointer;background:linear-gradient(#f6fbe8,#cfe6a8);border:2px solid #9ab86a;border-radius:10px;padding:9px 30px;font-size:17px;text-decoration:none;display:inline-block}.soft-btn:hover{filter:brightness(1.04)}.soft-btn.gray{background:linear-gradient(#f4f4f4,#d8d8d8);border-color:#aaa}.soft-btn.pink{background:linear-gradient(#ffeef4,#f6c8d8);border-color:#d890a8}.btn{background:var(--btn-face);border:1px solid var(--btn-border);color:#111;cursor:pointer;border-radius:2px;padding:4px 12px;font-size:14px;text-decoration:none;display:inline-block;box-shadow:inset -1px -1px #999}.btn:hover{background:#ffffe0}.btn.primary{background:#ffe8ee;border-color:#c68;font-weight:700}.btn.danger{color:var(--danger)}table.grid{border-collapse:collapse;background:#fff;width:100%}table.grid th{background:var(--table-head);border:1px solid var(--table-border);white-space:nowrap;padding:4px 6px;font-size:13px;font-weight:700}table.grid td{border:1px solid var(--table-border);padding:4px 6px;font-size:13.5px}table.grid tr:hover td{background:#f2fbff}table.grid a{color:var(--blue-link)}label.fl{background:#cfe6d8;border:1px solid #8ab098;margin-right:6px;padding:3px 10px;font-size:13px;display:inline-block}input[type=text],input[type=date],input[type=time],input[type=number],input[type=tel],input[type=email],input[type=password],select,textarea{background:#fff;border:1px solid #667;border-radius:2px;padding:4px 6px;font-family:inherit;font-size:15px}input:focus,select:focus,textarea:focus{outline:2px solid #7ab0d8}.form-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.badge{background:#eee;border:1px solid #999;border-radius:3px;padding:1px 8px;font-size:12px;display:inline-block}.badge.blue{color:#1a3d7a;background:#dbe9ff;border-color:#88a8d8}.badge.green{color:#1c5c1c;background:#dcf2dc;border-color:#7ab87a}.badge.yellow{color:#7a5c00;background:#fdf3cf;border-color:#d8c060}.badge.red{color:#a00;background:#fde0e0;border-color:#d88}.badge.gray{color:#555;background:#e8e8e8;border-color:#aaa}.tl-wrap{border:1px solid var(--table-border);background:#fff;overflow-x:auto}.tl-grid{min-width:1080px;display:grid}.tl-cell{border-bottom:1px solid #9ab;border-right:1px dotted #9ab;min-height:68px;position:relative}.tl-head{background:var(--bg-header);border-bottom:1px solid #689;border-right:1px solid #9ab;padding:3px 4px;font-size:13px;font-weight:700;position:sticky;top:0}.tl-item{color:#223a9a;z-index:2;background:#eef4ff;border:1px solid #7a94d8;border-radius:3px;padding:2px 4px;font-size:12px;text-decoration:none;display:block;position:absolute;top:2px;bottom:2px;overflow:hidden}.tl-item.blocked{color:#445;background:#dfe6f2;border-color:#99a}.tl-item.web{color:#7a4a00;background:#fff2e0;border-color:#d8a860}.tl-slot-link{flex:1;display:block;position:relative}.tl-slot-link:hover{outline-offset:-2px;background:#fdfbd8;outline:1px dashed #b8a860}.tl-slot-link:hover:after{content:"＋";color:#a08830;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex;position:absolute;inset:0}.cal{border-collapse:collapse}.cal th{background:#cfe6d8;border:1px solid #689;width:52px;padding:4px;font-size:13px}.cal td{text-align:center;cursor:pointer;background:#f4faf4;border:1px solid #689;padding:8px 6px;font-size:20px}.cal td.other{color:#b8c8e8}.cal td.sel{background:#b8c8f2}.cal td:hover{background:#ffffd0}.cal a{color:inherit;text-decoration:none;display:block}.nav-strip{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.nav-strip .date-big{font-size:26px;font-weight:700}.spacer{flex:1}.note{color:#555;font-size:12.5px}h1.app-title{text-align:center;letter-spacing:2px;margin:8px 0 16px;font-size:26px}.cust-cands{z-index:20;background:#fff;border:1px solid #888;min-width:380px;max-height:300px;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 4px 10px #00000026}.cust-cand{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #eee;align-items:baseline;gap:8px;padding:5px 8px;display:flex}.cust-cand:hover,.cust-cand:focus{background:#fff6cc}.cust-cand .no{text-align:right;min-width:48px;font-weight:700}.cust-cand .nm{flex:1}.line-tabs{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.line-tabs a{color:#222;background:#f4f4f4;border:1px solid #999;border-radius:3px;padding:3px 12px;font-size:13px;text-decoration:none}.line-tabs a.on{background:var(--green-btn);border-color:var(--green-btn);color:#fff;font-weight:700}.line-tabs a .n{opacity:.8;margin-left:4px}.cnt-auto{align-items:baseline;gap:4px;margin-right:12px;display:inline-flex}.cnt-auto b{text-align:right;background:#f2f2f2;border:1px solid #ccc;min-width:28px;padding:1px 6px;display:inline-block}
