:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17303b;background:#f3f6f7;font-size:16px;line-height:1.45;color-scheme:light}*{box-sizing:border-box}body{margin:0}header{padding:30px max(24px,calc((100vw - 1180px)/2));background:#123e48;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:11px;letter-spacing:2px;color:#b8d8d9}h1{font-size:27px;letter-spacing:-.7px;margin:5px 0}h2{font-size:21px;margin:0 0 8px}h3{font-size:18px;margin:0 0 10px}p{margin:5px 0 15px;color:#4b626c}.tag{background:#ffffff19;border:1px solid #ffffff40;padding:7px 12px;border-radius:20px;font-size:12px;white-space:nowrap}main{max-width:1228px;margin:auto;padding:24px}.notice{background:#e6eff0;border-left:3px solid #6b989b;padding:13px 16px;font-size:14px;margin-bottom:22px}nav{display:flex;gap:8px;border-bottom:1px solid #d4e0e2;padding-bottom:12px;margin-bottom:24px}button,input,select,textarea{font:inherit}button{padding:10px 16px;border:1px solid #bdced2;border-radius:8px;background:white;color:#173f49;cursor:pointer;min-height:44px}button:hover{background:#e5eef0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #4cabb3;outline-offset:2px}button.primary,nav button.active{background:#176b71;border-color:#176b71;color:white}button:disabled{opacity:.5;cursor:not-allowed}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.sectionhead p{margin-bottom:0}.filters{display:flex;gap:14px;align-items:end;margin-bottom:22px}.filters label:first-child{flex:1}label{display:block;font-size:13px;font-weight:600;color:#415963}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #bdced2;border-radius:7px;background:white;color:#17303b;margin:6px 0 14px;min-height:44px}.filters input{margin-bottom:0}.layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.day{margin-bottom:25px}.day h3{font-size:14px;color:#526c75;margin-bottom:10px}.appointment{display:grid;grid-template-columns:60px 1fr;gap:16px;text-align:left;width:100%;margin-bottom:8px;padding:17px;border:1px solid #d7e2e4;background:#fff}.appointment.selected{border:2px solid #176b71;padding:16px;background:#edf6f5}.time{font-weight:700;color:#176b71}.name{display:block;font-weight:650}.meta{display:block;color:#57707a;font-size:13px;margin-top:4px}.card{padding:24px;background:#fff;border:1px solid #d7e2e4;border-radius:10px}.card h2{margin-bottom:2px}.badge{display:inline-block;font-size:12px;background:#e8f1ee;color:#2e6554;padding:4px 9px;border-radius:5px;margin:14px 0}.facts{display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:1px solid #e0e8ea;border-bottom:1px solid #e0e8ea;padding:17px 0;margin:4px 0 18px}.factlabel{font-size:12px;color:#5c737c;display:block}.factvalue{display:block;font-size:14px;margin-top:3px}.buttons{display:flex;flex-wrap:wrap;gap:8px}.subtle{font-size:13px;color:#5c737c}.bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:32px;padding-top:18px;border-top:1px solid #d4e0e2;font-size:12px;color:#526c75}.filebox{padding:18px;background:white;border:1px dashed #6e999c;border-radius:8px;margin:20px 0}.filebox input{border:none;padding-left:0;margin-bottom:0}.study{width:100%;display:block;text-align:left;margin-bottom:10px}.study.selected{border:2px solid #176b71}.check{display:flex;gap:10px;align-items:start;margin:18px 0}.check input{width:19px;height:19px}#importConfirm{padding:20px 0}.error{color:#ab3434}.empty{padding:30px 0;color:#526c75}dialog{border:1px solid #cedbde;border-radius:12px;padding:26px;width:min(620px,94vw);max-height:92vh;overflow:auto;color:#17303b;background:#f8fafb}dialog::backdrop{background:#112e3a99}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.wide{width:100%}#viewer{width:min(760px,96vw)}.imagearea{background:#111820;min-height:220px;display:flex;align-items:center;justify-content:center;position:relative}canvas{display:block;max-width:100%;width:min(100%,512px);height:auto}#imageError{position:absolute;color:#fff;padding:24px;text-align:center;max-width:100%}input[type=range]{padding:0}#sliceValue{float:right} .demoimage{padding:30px;background:#edf3f4;text-align:center;color:#55727c;border-radius:6px;margin:12px 0}.note{white-space:pre-wrap;overflow-wrap:anywhere}.demo-label{font-size:12px;color:#8b602c;margin:0 0 12px}@media(max-width:720px){header{padding:20px;display:block}h1{font-size:23px}.tag{display:inline-block;margin-top:12px}main{padding:16px}.layout{grid-template-columns:1fr;gap:14px}.sectionhead{align-items:start}.sectionhead>button{max-width:165px}.filters{flex-wrap:wrap}.filters label:first-child{flex-basis:100%}.filters label{flex:1}.card{padding:18px}.bottom{align-items:start;flex-direction:column}.two{gap:10px}dialog{padding:18px}.facts{gap:12px}button{padding:10px 12px} .appointment{gap:10px}}

.card .eyebrow{color:#526c75}.key-editor{margin-top:20px;padding-top:20px;border-top:1px solid #d4e0e2}.key-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:12px 0}.key-item{min-width:0}.key-open{width:100%;text-align:left;padding:10px}.key-open img{width:100%;height:120px;object-fit:contain;display:block;background:#111820;margin-bottom:9px}.key-open strong{display:block;overflow-wrap:anywhere}.key-remove{font-size:12px;padding:4px 0;min-height:36px;background:transparent;border:0}.key-editor h3{margin-bottom:10px}#keyStatus{color:#176b71}#keyFrames{margin:20px 0}#viewer .imagearea canvas{max-height:50vh;width:auto;max-width:100%}#viewer .imagearea{min-height:160px}

.button-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid #bdced2;border-radius:8px;background:white;color:#173f49;text-decoration:none}.primary-link{background:#176b71;border-color:#176b71;color:white}.button-link:focus-visible{outline:3px solid #4cabb3;outline-offset:2px}nav{flex-wrap:wrap}

[hidden]{display:none!important}.gate{max-width:440px;margin:36px auto;padding:24px}.vaultbar{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:20px}.vaultbar span{font-size:14px;overflow-wrap:anywhere}#cloud .card{margin-bottom:18px}#transferStatus,#restoreStatus{white-space:pre-wrap;overflow-wrap:anywhere}.gate input{font-size:18px}
.vaultbar{flex-wrap:wrap}.vaultbar span{flex:1 0 100%}.factvalue{overflow-wrap:anywhere}@media(max-width:720px){.vaultbar button{flex:1;font-size:13px}.vaultbar{gap:8px}.filters>button{flex-basis:100%}}
