:root{font-family:Inter,Arial,sans-serif;color:#223347;background:#f3f5f8}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #d2d9e1;border-radius:7px;padding:10px 13px;background:white;color:#233449}button:hover{background:#edf2f7}.primary{background:#193550;color:white;border:0;font-weight:650}.primary:hover{background:#284f70}input,select,textarea{width:100%;border:1px solid #d5dce4;border-radius:7px;padding:10px;background:white;color:#233449;min-width:0}textarea{resize:vertical}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(130deg,#172d44,#375d76)}.login-card{width:min(400px,92vw);padding:35px;border-radius:16px;background:white;display:grid;gap:14px;box-shadow:0 15px 40px #0003}.login-card h2{margin:0}.login-card p{margin:0;color:#64748b}.mark{width:44px;height:44px;background:#122c44;color:white;display:grid;place-items:center;border-radius:9px;font-weight:750;letter-spacing:1px}.error{color:#b91c1c}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:#152d42;color:white;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:4px 10px 30px}.brand .mark{background:#ffffff24}.brand small{display:block;font-size:10px;letter-spacing:1px;color:#bdcbd5;margin-top:4px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{border:0;background:transparent;color:#c8d8e5;text-align:left;padding:13px}.sidebar nav button.active,.sidebar nav button:hover{background:#ffffff20;color:white}.sidebar footer{margin-top:auto;display:grid;gap:13px;color:#b5c7d7;font-size:12px}.sidebar footer button{background:#ffffff16;color:white;border:0}main{margin-left:250px;padding:25px 28px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}header h1{font-size:25px;margin:0 0 6px}header p{margin:0;color:#7d8b99;font-size:13px}.pill{padding:8px 12px;border-radius:30px;background:#e7ecf1;color:#546475;font-size:12px}.two{display:grid;grid-template-columns:minmax(350px,1fr) minmax(400px,1.12fr);gap:22px;align-items:start}.panel,.preview-wrap{background:white;border:1px solid #e1e6ec;border-radius:12px;padding:22px;box-shadow:0 2px 9px #26344908}.section-title,.preview-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.preview-bar{flex-wrap:wrap}.preview-bar div{display:flex;gap:7px}h3{margin:0 0 16px;font-size:17px}.section-title h3{margin:0}.muted,.hint{color:#81909e;font-size:12px}.field{display:grid;gap:7px;margin-bottom:15px}.field label{font-size:13px;font-weight:550}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.subhead{padding-top:16px;border-top:1px solid #edf0f3}.check{display:flex;gap:9px;align-items:center;font-size:13px;margin:14px 0}.check input{width:auto}.actions{display:flex;gap:8px;flex-wrap:wrap}.paper{width:100%;min-height:740px;background:white;color:#111;border:1px solid #d1d5db;padding:31px 27px;font:12px/1.4 Arial,'Noto Sans',sans-serif}.paper .top{text-align:center;border-bottom:2px solid #111;padding-bottom:11px;margin-bottom:16px}.paper .resort-logo{display:block;width:108px;height:auto;max-height:86px;object-fit:contain;margin:0 auto 5px}.paper .department{font-size:9px;letter-spacing:1.4px;font-weight:700;margin:2px 0 5px}.paper h2{font-size:17px;margin:8px 0 4px;color:#111}.paper h4{margin:15px 0 7px;font-size:12px;text-transform:uppercase}.paper .meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.paper table{width:100%;border-collapse:collapse;margin:10px 0;font-size:11px}.paper th,.paper td{border:1px solid #555;text-align:left;padding:7px 5px;overflow-wrap:anywhere}.paper th{background:#eee}.paper p{margin:6px 0}.paper .foot{display:flex;justify-content:space-around;text-align:center;margin-top:27px}.paper .sign{height:65px}.paper .tiny{text-align:center;font-size:10px;margin-top:16px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;margin-top:15px}td,th{border-bottom:1px solid #e5eaf0;text-align:left;padding:12px 8px}th{background:#f6f8fa;white-space:nowrap}td button{padding:6px 8px;margin:2px;font-size:12px}.company-list{display:grid;gap:8px}.company-item{padding:12px;background:#f6f8fa;border:1px solid #e2e8f0;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:12px}.company-item small{display:block;color:#697c8b}#toast{position:fixed;bottom:22px;right:22px;background:#173a55;color:white;padding:12px 17px;border-radius:8px;display:none;z-index:6;max-width:380px}dialog{border:0;border-radius:12px;padding:24px;max-width:min(600px,90vw)}dialog::backdrop{background:#0006}@media(max-width:1100px){.two{grid-template-columns:1fr}.paper{max-width:750px;margin:auto}}@media(max-width:650px){.sidebar{position:static;width:100%;height:auto;padding:10px}.sidebar .brand{padding:4px 8px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar footer{display:none}main{margin:0;padding:14px}.form-row{grid-template-columns:1fr}.pill{display:none}.paper{padding:16px 10px;min-height:0}}@page{size:A4;margin:13mm}@media print{body{background:white!important}#login,.sidebar,header,.view,.preview-bar,.hint,#toast,dialog{display:none!important}main{margin:0;padding:0}#createView{display:block!important}.two{display:block}.preview-wrap{display:block;border:0;box-shadow:none;padding:0}.paper{display:block!important;width:100%;min-height:0;border:0;padding:0;font-size:11px}.paper th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.paper .top{padding-bottom:7px;margin-bottom:10px}.paper .resort-logo{width:96px;max-height:76px}.paper h4{margin:10px 0 5px}.paper .foot{break-inside:avoid}.paper table{break-inside:auto}.paper tr{break-inside:avoid}}
