/* Self-contained client portal. No remote fonts, trackers or image dependencies. */
.np-portal{--np-ink:#163d34;--np-muted:#69766f;--np-line:#e0e6df;--np-bg:#f5f5ef;--np-accent:#d1e6a4;box-sizing:border-box;color:#263c33;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1220px;margin:32px auto;padding:36px;background:var(--np-bg);border:1px solid #e7e9df;border-radius:26px;isolation:isolate;text-align:left}
.np-portal *{box-sizing:border-box}.np-portal h1,.np-portal h2,.np-portal h3,.np-portal h4{font-family:inherit;color:var(--np-ink);line-height:1.15;font-weight:650;letter-spacing:-.6px;margin:0 0 14px;overflow-wrap:anywhere}.np-portal h2{font-size:44px}.np-portal h3{font-size:23px}.np-portal h4{font-size:18px}.np-portal p{margin:10px 0;overflow-wrap:anywhere}.np-portal a{color:var(--np-ink)}
.np-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 26px;border-bottom:1px solid var(--np-line)}.np-brand{display:inline-flex;align-items:center;gap:11px;font-weight:700;font-size:19px;letter-spacing:-.6px}.np-brand-mark{display:inline-grid;place-items:center;flex:none;background:var(--np-ink);color:#f0f5dc;width:39px;height:39px;border-radius:12px;font-size:27px;line-height:1;font-weight:600}.np-topbar-label{color:var(--np-muted);font-size:13px}.np-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px 4px 28px;overflow:hidden}.np-heading h2{font-size:clamp(32px,4vw,52px);letter-spacing:-1.9px;margin-bottom:17px}.np-heading p{max-width:480px;color:var(--np-muted);font-size:15px}.np-eyebrow{display:block;font-size:10px;font-weight:750;letter-spacing:1.8px;color:#526b59;margin-bottom:13px}.np-hero-art{display:grid;place-items:center;width:152px;height:152px;flex:none;background:#e5edcc;border:1px solid #d8e3bb;border-radius:50%;font-size:124px;line-height:1;color:#385741;transform:rotate(-12deg);margin-right:32px}
.np-client-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0 0 20px;border-bottom:1px solid var(--np-line)}.np-client-nav a{text-decoration:none;font-size:13px;font-weight:600;padding:8px 16px;border-radius:10px;border:1px solid transparent;color:#586b60}.np-client-nav a:hover{background:#e9eee2}.np-client-nav a.is-active{background:var(--np-ink);color:#fff;box-shadow:0 3px 8px #173c2a12}
.np-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:24px;align-items:start}.np-card{background:#fff;border:1px solid var(--np-line);padding:28px;border-radius:18px;margin:0 0 24px;box-shadow:0 5px 14px #163d3403}.np-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:6px}.np-section-heading .np-eyebrow{font-size:9px;margin-bottom:8px}.np-section-heading h3{margin-bottom:10px}.np-section-symbol{display:grid;place-items:center;width:34px;height:34px;background:#f0f3e9;border-radius:50%;font-size:20px;color:#506742}.np-muted,.np-ticket-row small,.np-message small{color:var(--np-muted)}.np-new-request{border-top:3px solid #a7c87d}.np-new-request>p{font-size:14px}.np-new-request h3{font-size:25px;letter-spacing:-.8px}
.np-ticket-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;text-decoration:none;color:var(--np-ink);border-bottom:1px solid #edf0e9;transition:background .15s}.np-ticket-row:last-child{border-bottom:0}.np-ticket-row:hover{background:#fafbf6}.np-ticket-row span:first-child{min-width:0}.np-ticket-row strong{display:block;font-size:15px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.np-ticket-row small{display:block;font-size:11px;margin-top:7px;letter-spacing:.2px}.np-badge{display:inline-flex;align-items:center;gap:6px;flex:none;font-size:10px;font-weight:650;line-height:1.4;border:1px solid #e0e5db;padding:6px 9px;border-radius:7px;white-space:nowrap;background:#f3f5ed;color:#4c6352}.np-badge::before{content:"";height:5px;width:5px;border-radius:50%;background:currentColor}.np-badge[data-status=doing]{color:#856320;background:#fbf4de;border-color:#eee3c0}.np-badge[data-status=waiting]{color:#675489;background:#f0ecf7;border-color:#e3dbef}.np-badge[data-status=done]{color:#33694d;background:#e9f3eb;border-color:#d8e9da}
.np-empty{padding:36px 20px;text-align:center;border:1px dashed #dde5d6;border-radius:12px;background:#fcfcf8;margin:20px 0 4px}.np-empty>span{display:inline-grid;place-items:center;width:52px;height:52px;background:#edf2de;border-radius:16px;color:#547144;font-size:37px;margin-bottom:18px}.np-empty p{font-size:13px;color:var(--np-muted);max-width:280px;margin:10px auto}
.np-form{display:grid;gap:18px;margin:24px 0 0}.np-form label,.np-login-form label{display:grid;gap:7px;font-size:12px;font-weight:650;line-height:1.5}.np-portal input:not([type=hidden]):not([type=checkbox]):not([type=submit]),.np-portal select,.np-portal textarea{width:100%;font-family:inherit;font-size:14px;line-height:1.5;font-weight:400;color:#263c33;background:#fcfdf9;border:1px solid #dbe2d6;border-radius:10px;padding:12px 13px;min-height:46px;box-shadow:0 1px 2px #173c2a03}.np-portal input::placeholder,.np-portal textarea::placeholder{color:#68766b;opacity:1}.np-portal textarea{resize:vertical;min-height:110px}.np-form>.np-muted{font-size:11px;line-height:1.65;background:#f6f7f0;padding:12px 14px;border-radius:9px;margin:0}.np-form .np-group-fields{display:grid;gap:16px}.np-form details{border:1px solid #dfe6d7;border-radius:10px;background:#f8faf3;padding:15px}.np-form details summary{font-size:12px;font-weight:650;cursor:pointer}.np-form details p{font-size:12px;color:var(--np-muted)}.np-form details label{margin-top:14px}
.np-portal button,.np-portal input[type=submit],.np-portal .np-button{border:1px solid #163d34;border-radius:10px;background:#163d34;color:#fff;font:650 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:14px 18px;text-decoration:none;cursor:pointer;display:inline-block;min-height:46px;transition:background .15s,box-shadow .15s}.np-portal button:hover,.np-portal input[type=submit]:hover,.np-portal .np-button:hover{background:#275747;color:#fff;box-shadow:0 4px 10px #163d3417}.np-portal .np-secondary{background:#fff;color:#375743;border-color:#cdd9cf}.np-portal a:focus-visible,.np-portal button:focus-visible,.np-portal input:focus-visible,.np-portal select:focus-visible,.np-portal textarea:focus-visible,.np-portal summary:focus-visible{outline:3px solid #75984d;outline-offset:3px}.np-portal .np-success{background:#eaf2de;color:#35562d;border:1px solid #cfdfbd;padding:14px 18px;border-radius:11px;font-size:14px}.np-portal [hidden]{display:none!important}
.np-ticket-title{display:flex;align-items:start;justify-content:space-between;gap:16px}.np-back{display:inline-block;margin:0 0 20px;font-size:13px;text-decoration:none;font-weight:600}.np-discussion{display:grid;gap:16px;margin:24px 0}.np-message{background:#fff;border:1px solid var(--np-line);border-radius:16px;padding:24px}.np-message header{display:flex;justify-content:space-between;gap:12px;font-size:13px;border-bottom:1px solid #edf0e9;padding-bottom:14px;margin-bottom:16px}.np-message small{font-size:11px}.np-message p{overflow-wrap:anywhere;font-size:14px}.np-internal{background:#fbf5e9;border-color:#e5d8b5}.np-table-scroll{overflow:auto}.np-portal table{border-collapse:collapse;width:100%;font-size:13px}.np-portal td,.np-portal th{padding:14px 9px;border-bottom:1px solid var(--np-line);text-align:left}.np-portal th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--np-muted)}.np-total{font-size:27px;font-weight:650;color:var(--np-ink);text-align:right;letter-spacing:-1px}.np-review{border:1px solid #cbdab9;padding:20px;border-radius:12px;background:#f2f6e9}.np-review h3{font-size:20px}.np-review pre{font-family:inherit;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.np-review button{margin-top:8px}
.np-login{display:grid;grid-template-columns:1.1fr 1fr;gap:0;padding:0;overflow:hidden;max-width:1020px;min-height:590px}.np-login-story{position:relative;overflow:hidden;padding:44px;background:#183e34;color:#edf4db;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.np-login-story .np-brand{position:absolute;top:32px;left:40px;color:#f1f4e8}.np-login-story .np-brand-mark{background:#d4e6ae;color:#183e34}.np-login-story>.np-eyebrow{color:#bdcf9e;margin-top:45px}.np-login-story h2{font-size:48px;letter-spacing:-1.8px;color:#f1f4e8;position:relative;z-index:1}.np-login-story p{color:#c7d4c6;max-width:315px;font-size:14px;position:relative;z-index:1}.np-login-story::after{content:"✳";position:absolute;right:-45px;bottom:-125px;font-size:350px;line-height:1;color:#335747;transform:rotate(-15deg);pointer-events:none}.np-login-note{font-size:11px;margin-top:38px;position:relative;z-index:1;color:#c5d5b4}.np-login-note span{font-size:21px;margin-right:8px}.np-login-form{padding:52px 44px;background:#fff;display:flex;flex-direction:column;justify-content:center}.np-login-form h3{font-size:27px;letter-spacing:-.9px}.np-login-form>p{font-size:13px;color:var(--np-muted);margin:0 0 22px}.np-login-form form>p{margin:16px 0}.np-login-form .login-remember label{display:flex;align-items:center;gap:9px;font-weight:400;font-size:12px}.np-login-form input[type=checkbox]{accent-color:#163d34;width:16px;height:16px}.np-login-form input[type=submit]{width:100%}
.np-admin{max-width:1480px;margin:24px 24px 24px 0}.np-admin>h1{font-size:30px}.np-admin>.np-columns{grid-template-columns:minmax(270px,.65fr) minmax(0,2fr)}.np-admin .np-columns .np-columns{grid-template-columns:minmax(0,1fr) minmax(280px,1fr)}.np-admin details summary{cursor:pointer;font-weight:650}.np-portal code{font-size:12px}
@media(max-width:980px){.np-portal{padding:25px}.np-columns,.np-admin>.np-columns,.np-admin .np-columns .np-columns{grid-template-columns:1fr}.np-hero-art{width:112px;height:112px;font-size:94px;margin-right:12px}.np-login{padding:0}.np-login-story{padding:35px}.np-login-form{padding:36px 28px}.np-login-story h2{font-size:39px}.np-login-story .np-brand{left:32px}}
@media(max-width:600px){.np-portal{padding:18px;margin:16px 0;border-radius:18px;font-size:14px}.np-topbar{padding-bottom:20px}.np-brand{font-size:17px}.np-topbar-label{font-size:10px}.np-heading{padding:28px 0 22px;gap:10px}.np-heading h2{font-size:34px;letter-spacing:-1.2px}.np-heading p{font-size:13px}.np-hero-art{width:70px;height:70px;font-size:60px;margin:0;align-self:flex-start;margin-top:25px}.np-eyebrow{font-size:8px;letter-spacing:1.4px}.np-card{padding:20px;border-radius:14px}.np-message{padding:19px}.np-message header{flex-direction:column;gap:4px}.np-ticket-title{flex-direction:column;gap:0}.np-ticket-row{gap:9px;align-items:start;padding:18px 0}.np-ticket-row strong{font-size:13px}.np-badge{font-size:9px;padding:5px 6px}.np-client-nav{gap:5px}.np-client-nav a{padding:7px 11px;font-size:12px}.np-login{display:block;padding:0}.np-login-story{padding:95px 28px 30px}.np-login-story .np-brand{left:28px;top:26px}.np-login-story>.np-eyebrow{margin-top:0}.np-login-story h2{font-size:38px}.np-login-story p{max-width:290px}.np-login-note{margin-top:20px}.np-login-story::after{font-size:260px;bottom:-100px}.np-login-form{padding:30px 25px}.np-admin{margin-right:12px}}
@media(prefers-reduced-motion:reduce){.np-portal *{transition:none!important;scroll-behavior:auto!important}}
