.tenant-shell{--ink:#193442;--muted:#6a7f8d;--line:#dce6ec;color:var(--ink);background:#f4f7fa;min-height:100vh;font-family:Arial,Noto Sans KR,sans-serif;font-size:15px}.tenant-shell *{box-sizing:border-box}.tenant-top{color:#fff;background:#193442;justify-content:space-between;align-items:center;gap:20px;padding:22px max(22px,50vw - 680px);display:flex}.tenant-top h1{margin:0;font-size:25px}.tenant-top p{opacity:.75;margin:5px 0 0;font-size:12px}.tenant-main{max-width:1400px;margin:auto;padding:24px}.tenant-nav,.tenant-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tenant-nav{margin-bottom:20px}.tenant-tile{border:1px solid var(--line);width:66px;min-width:44px;min-height:66px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:7px;transition:box-shadow .16s,background-color .16s;display:inline-flex}.tenant-tile span{white-space:nowrap;font-size:11px;font-weight:600}.tenant-tile.red{color:#a3342e;background:#fbecec;border-color:#edc0bd}.tenant-tile.blue,.tenant-nav [aria-pressed=true]{color:#315f96;background:#e9f1ff;border-color:#bdd1ee}.tenant-tile.green{color:#286c55;background:#e8f4ee;border-color:#b6d9c9}.tenant-tile.yellow{color:#8a691c;background:#fff5d9;border-color:#ebd991}.tenant-shell button:disabled{opacity:.45;cursor:default}.tenant-shell button:not(:disabled):hover,.tenant-shell button:not(:disabled):active{box-shadow:0 0 0 3px #97c9b739,0 0 15px #97c9b735}.tenant-shell :focus-visible{outline-offset:3px;outline:3px solid #7fb9a6}.tenant-card{border:1px solid var(--line);background:#fff;border-radius:18px;margin-bottom:18px;padding:22px}.tenant-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.tenant-heading h2{margin:0;font-size:21px}.tenant-muted{color:var(--muted);font-size:13px;line-height:1.7}.tenant-error{color:#8d3535;overflow-wrap:anywhere;background:#fff1f1;border:1px solid #efc6c6;border-radius:12px;margin:12px 0;padding:14px;line-height:1.6}.tenant-success{color:#27674f;background:#eaf5ef;border-radius:12px;margin:12px 0;padding:14px}.tenant-shell input,.tenant-shell select,.tenant-shell textarea{width:100%;min-height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cddae4;border-radius:10px;padding:11px}.tenant-shell input[type=checkbox]{accent-color:#315f96;width:20px;min-height:20px}.tenant-shell label{flex-direction:column;gap:8px;font-size:13px;font-weight:600;display:flex}.tenant-shell label:has(input[type=checkbox]){flex-direction:row;align-items:center}.tenant-shell textarea{resize:vertical;min-height:100px}.tenant-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.tenant-form .full{grid-column:1/-1}.tenant-primary{color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#193442;border:1px solid #193442;border-radius:12px;padding:12px 22px;font-weight:700}.tenant-secondary{border:1px solid var(--line);color:var(--ink);min-height:44px;font:inherit;cursor:pointer;background:#f4f7fa;border-radius:12px;padding:10px 16px}.tenant-dialog{border:1px solid var(--line);width:min(860px,100vw - 24px);max-height:calc(100dvh - 28px);color:var(--ink);background:#fff;border-radius:20px;padding:0;overflow:auto}.tenant-dialog::backdrop{background:#193442a8}.tenant-dialog>header{z-index:3;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex;position:sticky;top:0}.tenant-dialog h2{margin:0;font-size:21px}.tenant-dialog-body{padding:22px}.tenant-dialog footer{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.tenant-booking{padding:0;overflow:hidden}.tenant-booking-head{grid-template-columns:1fr auto;gap:12px;padding:19px 22px;display:grid}.tenant-booking-head strong{font-size:17px}.tenant-booking-head p{margin:9px 0 0;font-size:16px}.tenant-booking-head .tenant-actions{justify-content:flex-end}.tenant-booking-body{border-top:1px solid var(--line);background:#fcfdfe;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.tenant-booking-cell{border-right:1px solid var(--line);text-align:center;flex-direction:column;gap:16px;min-width:0;padding:18px 12px;display:flex}.tenant-booking-cell:last-child{border-right:0}.tenant-booking-cell h3{color:var(--muted);margin:0;font-size:13px;font-weight:500}.tenant-booking-cell .tenant-actions{flex-wrap:nowrap;justify-content:center;gap:6px;margin-top:auto}.tenant-booking-cell .tenant-tile{flex:0 66px;width:clamp(44px,4.6vw,66px);min-width:44px}.tenant-booking-cell .tenant-tile span{font-size:10px}.tenant-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.tenant-counts span{color:var(--muted);font-size:11px}.tenant-counts b{color:var(--ink);margin-top:8px;font-size:26px;display:block}.tenant-booking-cell .amount{font-size:19px;font-weight:700}.tenant-goods{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:13px;display:grid}.tenant-note{overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.6}.tenant-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.tenant-stat{border:1px solid var(--line);background:#f4f8f9;border-radius:14px;padding:20px}.tenant-stat b{margin-top:10px;font-size:25px;display:block}.tenant-date{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tenant-date input{width:175px}.tenant-empty{text-align:center;color:var(--muted);padding:36px 16px}.tenant-list{gap:12px;display:grid}.tenant-row{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;justify-content:space-between;align-items:center;gap:15px;padding:16px;display:flex}.tenant-row p{color:var(--muted);margin:6px 0;font-size:13px}.tenant-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tenant-feature{border:1px solid var(--line);border-radius:12px;padding:12px;align-items:flex-start!important}.tenant-feature small{color:var(--muted);margin-top:4px;font-weight:400;display:block}.tenant-video{background:#132833;border-radius:12px;width:100%;max-height:480px}.tenant-message{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f7fa;border-radius:12px;max-height:55vh;padding:18px;line-height:1.8;overflow:auto}.tenant-table{border-collapse:collapse;width:100%;font-size:13px}.tenant-table td,.tenant-table th{border-bottom:1px solid var(--line);text-align:left;padding:12px 8px}.tenant-table td:last-child{text-align:right}.tenant-scroll{overflow-x:auto}.tenant-login{max-width:430px;margin:7vh auto}.tenant-profile-vessel{grid-template-columns:1fr 100px 44px;align-items:end;gap:8px;display:grid}.tenant-shell a{color:inherit}.tenant-badge{background:#ecf3f6;border-radius:30px;padding:5px 10px;font-size:12px;display:inline-block}.tenant-upload{border:1px dashed #bfd0db;border-radius:14px;margin-top:18px;padding:18px}.tenant-detail-sections{gap:18px;display:grid}.tenant-detail-sections section{border-top:1px solid var(--line);padding-top:18px}.tenant-feature-group{margin-bottom:24px}.tenant-feature-group h3{font-size:15px}.tenant-shell fieldset{border:0;min-width:0;margin:0;padding:0}.tenant-inline-check{align-items:center;gap:10px;margin-top:15px;display:flex}.tenant-account-secret{overflow-wrap:anywhere;background:#fff4da;padding:15px}.tenant-account-secret code{font-size:20px}.tenant-footer{text-align:center;color:var(--muted);margin:26px 0;font-size:12px}@media (max-width:1100px){.tenant-booking-body{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-booking-cell:nth-child(2){border-right:0}.tenant-booking-cell:nth-child(n+3){border-top:1px solid var(--line)}.tenant-booking-cell .tenant-tile{flex-basis:66px;width:66px}.tenant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.tenant-main{padding:12px}.tenant-top{padding:18px 14px}.tenant-top h1{font-size:22px}.tenant-card{border-radius:15px;padding:16px}.tenant-booking{padding:0}.tenant-heading{flex-wrap:wrap;align-items:flex-start}.tenant-booking-head{grid-template-columns:1fr;padding:16px}.tenant-booking-head .tenant-actions{justify-content:flex-start}.tenant-booking-body{grid-template-columns:1fr}.tenant-booking-cell{border-top:1px solid var(--line);padding:16px;border-right:0!important}.tenant-booking-cell:first-child{border-top:0}.tenant-booking-cell .tenant-tile{flex-basis:60px;width:60px;min-height:60px}.tenant-form,.tenant-feature-grid{grid-template-columns:1fr}.tenant-dialog-body{padding:16px}.tenant-dialog>header{padding:14px 16px}.tenant-grid{grid-template-columns:1fr}.tenant-nav{gap:6px}.tenant-tile{width:58px;min-height:58px}.tenant-date input{width:155px}.tenant-row{flex-wrap:wrap}.tenant-table{min-width:430px}.tenant-counts b{font-size:25px}.tenant-top .tenant-tile{width:48px;min-height:48px}.tenant-profile-vessel{grid-template-columns:1fr 78px 44px}.tenant-dialog footer{flex-wrap:wrap}.tenant-dialog footer>*{flex:1}.tenant-stat b{font-size:23px}}@media (prefers-reduced-motion:reduce){.tenant-tile{transition:none}}@media print{.tenant-top,.tenant-nav,.tenant-actions,.tenant-heading button,.tenant-footer,.tenant-shell>.tenant-main>.tenant-error{display:none!important}.tenant-shell{background:#fff}.tenant-main{padding:0}.tenant-card{border:0;margin:0;padding:8px}.tenant-booking{break-inside:avoid}.tenant-grid{grid-template-columns:repeat(3,1fr)}.tenant-stat{padding:10px}.tenant-stat b{font-size:18px}.tenant-table{min-width:0}.tenant-primary,.tenant-secondary{display:none!important}@page{size:A4;margin:12mm}}.tenant-top .tenant-identity{overflow-wrap:anywhere;font-size:13px}.tenant-account-guide{background:#edf5f4;border:1px solid #c6dfd8;border-radius:14px;margin:18px 0;padding:20px}.tenant-account-guide h3{margin:0 0 10px;font-size:18px}.tenant-account-guide p{overflow-wrap:anywhere;line-height:1.75}.tenant-login details{margin-top:22px;font-size:13px;line-height:1.7}.tenant-login summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.tenant-top>div{min-width:0}.platform-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:20px;display:grid}.platform-intro{justify-content:space-between;align-items:center;gap:20px;display:flex}.platform-intro h2{margin:0}.platform-companies{position:sticky;top:16px}.platform-companies h2{font-size:18px}.platform-company-list{gap:9px;margin-top:16px;display:grid}.platform-company{text-align:left;border:1px solid var(--line);color:var(--ink);cursor:pointer;overflow-wrap:anywhere;width:100%;min-width:0;font:inherit;background:#fff;border-radius:14px;gap:8px;padding:16px;display:grid}.platform-company span,.platform-company small{color:var(--muted);font-size:12px}.platform-company[aria-pressed=true]{background:#edf5f4;border-color:#7eb29f;box-shadow:inset 3px 0 #558d7b}.platform-detail,.platform-staff>div{min-width:0}.platform-staff p,.platform-detail h2{overflow-wrap:anywhere}.platform-permission{margin:18px 0}.platform-shell .tenant-nav{margin:0}.platform-shell a{text-decoration:none}.platform-detail .tenant-heading{flex-wrap:wrap}.platform-shell .tenant-feature{overflow-wrap:anywhere;min-width:0}.platform-shell .tenant-feature span{min-width:0}.platform-staff .tenant-actions{flex-shrink:0}@media (max-width:850px){.platform-layout{grid-template-columns:minmax(0,1fr)}.platform-companies{position:static}.platform-company-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.platform-company-list{grid-template-columns:minmax(0,1fr)}.platform-staff{align-items:flex-start;gap:14px}.platform-staff .tenant-actions{justify-content:flex-start;width:100%}.platform-intro h2{font-size:19px}.platform-shell .tenant-top{flex-wrap:wrap}.platform-shell .tenant-top h1{font-size:23px}}.tenant-top a.tenant-secondary{color:#193442;background:#f4f7fa}.tenant-top-actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.tenant-top-actions .tenant-tile{width:66px;height:66px;min-height:66px;color:var(--ink);text-decoration:none}.tenant-top-actions>a.tenant-tile:is(:hover,:active){box-shadow:0 0 0 3px #97c9b739,0 0 15px #97c9b735}.tenant-top:has(.tenant-top-actions)>div:first-child{overflow-wrap:anywhere;min-width:0}@media (max-width:639px){.tenant-top-actions .tenant-tile{width:58px;height:58px;min-height:58px;padding:4px}.tenant-top-actions .tenant-tile span{font-size:10px}}@media (max-width:479px){.tenant-top:has(.tenant-top-actions){flex-wrap:wrap;gap:14px}.tenant-top:has(.tenant-top-actions)>div:first-child{flex:100%}.tenant-top-actions{width:100%}}
