
@font-face {
	font-family: "Trebuchet MS";
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	letter-spacing: -0.45px;
	word-spacing: 0.4px;
}
@font-face {
	font-family: "Lato-fallback";
	size-adjust: 97.38%;
	ascent-override: 99%;
	src: local("Arial");
}
:root{
   --header-height: 80px;
   --grid-gap:16px;
	--header-background:#fff;
	--a-color: #1a5bc1;
	--a-color-hover: #000;
	--text-color: #333;
	--button-color: #1a5bc1;
	--button-hover-color: #2577dd;
	--bgimage: #fff url();
	--logo-color: #fff;
	--navigation-color-a: #fff;
	--navigation-color-menu: #fff;
	--navigation-color-dropmenu-a: #333;
	--aside-color-a: #fff;
	--aside-color-a-hover: #2577dd;
	--aside-color-li-hover:#f5f6f8;
	--aside-width: 240px;
}
@media only screen and (max-width: 768px) {
	:root{
		--navigation-color-a: #333;
		--aside-color-li-hover:none
	}
	body{
      -webkit-tap-highlight-color: transparent;
      -webkit-touch-callout: none; 
      -webkit-user-select: none;   
      user-select: none;   
   }
}
@media all and (display-mode: standalone) {
   body{
      -webkit-tap-highlight-color: transparent;
      -webkit-touch-callout: none; 
      -webkit-user-select: none;   
      user-select: none;   
		margin: 0;
		overflow: hidden;                        
		overscroll-behavior-y: none;
		-webkit-overflow-scrolling: touch;
   }
	input, textarea {
		-webkit-user-select: text;
		user-select: text;
		-webkit-touch-callout: default;
	}
}body, html{
   background: var(--bgimage);
   background-size: cover;
   background-attachment: fixed;
   background-position: center center;
   margin:0;
   padding:0;
   font-family:"Lato", Tahoma;
   font-display:swap;
   font-size:20px;
   margin:0 auto;
   height:calc(100dvh - var(--header-height));
}
body:has(.main-min){
   background: #f7f7f8
}
:root {
   --visual-vh: 100vh;
   --keyboard-offset: 0px;
 }
header{
   background:var(--header-background);
   color:#000;
   position:fixed;
   left:0;
   top:0;
   right:0;
   height:var(--header-height);
   padding:0 20px;
   z-index:100000000;
   border-bottom: 1px #f0f0f0 solid;
   display:flex; align-items:stretch; align-content:center; gap:40px;
}
.user header{
   border:none;
}
.user header li a{
   color: #fff;
   background:#4A4A4A;
   border-radius:100px;
   display:flex;
   align-items:center;
   justify-content: center;
   width:32px;
   height:32px;
}
.user .navigation-inline{
   gap:8px;
}
@media only screen and (min-width: 768px) {
   .user header{
      left:var(--aside-width)
   }
}
main{
   min-height:400px
}
main:not(.main-min){
   top:var(--header-height);
}
main.main-min .main-head{
   position:sticky;
   background:#fff;
   z-index: 10000000;
   top:0;
   padding:0 12px;
   border-bottom:1px #eee solid;
   height:var(--header-height);
}
main.main-min .inner{
   max-width:600px;
   padding:12px;
}
main.main-min .exit{
   margin-right:24px;
}
main.main-min{
}
.inner{
   width: calc(100vw - 40px);
   margin-left:auto;
   margin-right:auto;
   padding-top:30px;
   max-width:900px
}
ul, li{
   margin:0;
 }
a{
	color: var(--a-color);
	text-decoration:underline;
   -webkit-user-drag: none;
}
a:hover{
	color: var(--a-color-hover);
}
hr{
   border: none;
   border-bottom: 5px solid #f0f1f4 !important;
   margin-top: 20px;
   margin-bottom: 20px;
   width:100%;
   position: relative;
}
h1,h2,h3,h4,h5,h6{
   margin:0 0 .75em;
   padding:0;
   line-height:1.5em;
   color:var(--text-color);
}
p{
   margin:0;
   padding:0;
   font-size:inherit;
   color:var(--text-color);
   line-height:1.5em;
   font-weight:200;
}
li{
   font-size:inherit;
   color:var(--text-color);
   font-weight:200;
}
article p:not(:empty){
   margin-bottom:20px;
}
.material-symbols-outlined{
   vertical-align: bottom;
   font-size: 1.2em !important;
   top: 0px;
   position: relative;
}
@media print {
	@page {size: landscape}
	header{
		display: none;
	}
}
.inner{
   max-width:1200px;
   margin:0 auto;
   box-sizing: border-box;
   width:100%
}
.hidden{
   display:none !important
}
.main-head{
   display:flex; 
   gap:20px; 
   align-items: center; 
   padding-bottom:16px;
   justify-content: space-between;
}
.main-head h1{
   margin:0;
   padding:0
}
.main-head > *{
   width:auto !important
}
.main-head .create{
   height:36px;
}
.main-head .create:before{
   content: "add";
   font-family: "Material Symbols Outlined";
   top: 1px !important;
   position: relative;
}
aside + main{
   max-width:calc(100vw - var(--aside-width)); 
   margin-left: var(--aside-width);
   margin-top: var(--header-height);
   min-height:100%;
}
aside{
   display: block;
   align-items: flex-start;
   position: fixed; 
   left: 0; 
   top: 0; 
   width: var(--aside-width); 
   height:100%; 
   padding:16px; 
   box-sizing: border-box; 
   z-index:100;
   z-index:1000000000;
   overflow-y: auto;
   overflow-x: hidden;
   background:linear-gradient(90deg, #ffffff, #fafafa);
   border-right:1px #eee solid;
   padding-top:40px;
}
@media only screen and (max-width: 768px) {
   .desktop-only{
      display:none !important
   }
   header{
      justify-content: space-between;
   }
   .mobile-browser-only{
      display:block !important
   }
   main{
      max-width:none !important;
      margin-left:auto !important;
   }
   aside{
      display:none !important;
      width: 100% !important;
      position:fixed;
      left:0;
      right:0;
   }
   .aside-open aside{
      display:grid !important;
      padding-top:60px !important
   }
}
@media only screen and (min-width: 769px) and (max-width: 1024px){
   .ios-wrapper main {
      max-width:none !important;
      margin-left:auto !important;
   }
}
@media all and (display-mode: standalone) {
   main{
      overflow:auto;
   }
   aside{
      display: block !important;
      position: fixed !important;
      bottom: env(safe-area-inset-bottom, 0);
      height: auto !important;
      top: auto !important;
      padding:0 !important;
      background:linear-gradient(0deg, #000000, #4a4a4a);
      left:0;
      right:0;
      border:none;
      position: sticky;
      inset-block-end: 0;                     
      block-size: var(--nav-h, 56px);
      display: grid; place-items: center;
      padding-block-end: env(safe-area-inset-bottom);
      border-block-start: 1px solid rgba(255,255,255,.12);
   }
}
.ios-wrapper aside{
   display: block !important;
   position: fixed !important;
   height: auto !important;
   top: auto !important;
   padding:0 !important;
   background:#000;
   left:0;
   right:0;
   border:none;
   position: fixed;
   display: grid; place-items: center;
   bottom: calc(env(safe-area-inset-bottom) - 38px);
   width:100vw;
}
.ios-wrapper  .mobile-browser-only{
   display:none !important
}
.ios-wrapper:has(input:focus) footer{
   display:none !important
}
.ios-wrapper:has(input:focus) aside{
   display:none !important
}  
button,
input[type='submit'],
input[type='button'],
.button{
   background:var(--button-color);
   border:none;
   color:#fff;
   padding:10px 15px;
   border-radius:6px;
   cursor:pointer;
   font-size:16px;
   line-height:16px;
   font-family:inherit;
   height:40px;
   align-items:center;
   text-decoration:none;
   box-sizing:border-box;
   text-align:center;
   white-space:nowrap;
   width:100%;
   display:inline-grid;
   justify-content: center;
   grid-auto-flow: column;
   gap:5px
}
button:hover, 
input[type='submit']:hover, 
.button:hover
{
   background:var(--button-hover-color);
   color:#fff;
}
input[type=submit][disabled=disabled] {
   opacity: .5
}
a.button{
   padding:0 12px
}
form{
   padding:0;
   font-family:inherit;
   margin:0 auto;
   display:grid;
   gap:var(--grid-gap);
}
input[type=text],
input[type=email],
input[type=url],
input[type=date],
input[type=password],
input[type=number],
input[type=tel],
input[type=range],
input[type=datetime-local],
input[type=time],
input[type=search],
input:-webkit-autofill,
select,
textarea,
.textarea,
.input,
.fake-input{
   padding:0 12px;
   border-radius:3px;
   width:100%;
   height:40px;
   display:grid;
   font-family:inherit;
   font-size:16px;
   line-height:16px;
   resize:none;
   box-sizing: border-box;
   grid-auto-flow: column;
   justify-content: space-between;
   outline:none;
   background:#fff !important;
   border:1px #ccc solid;
   cursor:pointer;
}
form input[type=date]{
   appearance: none;
   background:#fff;
   color:inherit
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
}
input[readonly], input[readonly]:focus{
   cursor:default;
   background:#ebebeb;
   border:1px #e1e1e1 solid !important;
}
input[type=password] + div{
   display: none;
   position: absolute;
   right: 10px;
   top: -14px;
   height: 15px;
   padding: 5px 8px;
   font-size: 12px;
   background: #fcfcfc;
   border: 1px solid #333;
   border-radius: 12px;
}
label:has(input[type=password]):hover > div{
   display:block
}
input[type=password] + div:empty{
   display: none !important;
}
a[onclick] ~ input[type=text]{
   padding-right:75px
}
form input[type=text]:focus,
form input[type=number]:focus,
form input[type=password]:focus,
form input[type=date]:focus,
form select:focus, 
form textarea:focus{
   border:1px #5b5b5b solid
}
#mkninput{
   width:0;
   height:0;
   overflow:hidden;
}
form input[type=text]:disabled{
   background-color: #f6f6f6;
   cursor:not-allowed
}
form select{
   background: url(https://d1b21banxzhuc6.cloudfront.net/images/arrows.png) right 10px center no-repeat rgba(0,0,0,0);
   -webkit-appearance: none;
   -moz-appearance: none;
   padding-right:30px;
}
form input[type='radio']{
   display: inline-block;
   width: 20px;
   height: 20px;
   vertical-align: middle;
}
form select[multiple]{
   min-height:100px;
   background-image:none;
   padding:8px !important
}
@media only screen and (max-width: 768px) and (hover: none) {
   form select[multiple]{
      min-height: auto;
   }
}
@media only screen and (max-width: 400px){
   form select[multiple]{
      min-height: auto;
   }
}
textarea{
   min-height:88px;
   padding:12px;
   height:auto
}
form label{
   display:block;
   position:relative;
   font-size:16px;
}
form > label:last-child{
   padding-bottom:0
}
form label > span{
   display:block;
   font-size:16px;
   padding-bottom:8px;
}
form label span{}
form label span:empty{
   padding:0;
}
form label span:after{
   content: attr(data-name);
   font-size: 9px;
   position: absolute;
   color: rgba(0, 0, 0, .65);
   transition: all 0.1s ease;
   font-size: 16px;
   left: 13px;
   top: 10px;
   opacity:1;
   white-space:nowrap;
   cursor:pointer;
   max-width: calc(100% - 26px);
   overflow: hidden;
}
form label:has(span:empty) input::placeholder{
   opacity:0
}
form label span:empty:has(+ input:not(:placeholder-shown)):after,
form label span:empty:has(+ .fake-input > input:not(:placeholder-shown)):after,
form label span:empty:has(+ .fake-input > .clicktoremove):after
{
   font-size:9px;
   left: 10px;
   padding: 0 4px;
   background: none;
   top: -5px;
   display:block;
   opacity:1;
   position:absolute;
   background:#fff 
}
.error-message{
   color:red;
}
.error-message:empty{
   display:none
}
.button-floater {
   position: absolute;
   right: 0;
   border-radius: 0;
   top:28px;
}
.input-drop{
   position: absolute;
   left: 0;
   top: auto;
   background: #fff;
   z-index: 1000;
   width: 100%;
   box-shadow: 0 8px 24px rgba(0,0,0,0.1);
   max-height: 320px;
   overflow-y: auto;
   border: 1px solid #e0e0e0;
   border-radius:12px;
}
.input-drop:empty{
   display:none !important
}
.input-drop .dd-item {
   display: block;
   padding: 8px;
   font-weight: 400;
   border-bottom: 1px solid #eee;
   color: var(--a-color);
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
   font-size: 16px;
   cursor: pointer;
   user-select: none
}
.disabled,.input-drop .dd-item.active,.selector .dropdown a:hover {
   background: #eee
}
.input-drop .dd-item:hover {
   background: #fafafa
}
div.input {
   height: auto;
   display: block
}
.popup-messages{
	display: block;
	position: fixed;
	bottom: 40px;
	left: 0;
	right:0;
	max-width:480px;
	margin:0 auto;
	z-index: 10000000;
	padding: 20px;
	background: #fff;
	box-shadow: 0 0 20px rgba(0,0,0,.4);
	border-radius: 10px;
	color: #fff;
	text-align: center
}
.popup-messages p{
	padding:10px;
	font-size:20px;
   margin:0
}
.collapsible{
   transition: all 100ms ease-in-out;
}
.collapsed .collapsible{
   height:0px;
   overflow: hidden;
}
.fake-input{
	display: flex;
	align-items: center;
	padding: 4px 12px !important;
	white-space: normal;
	height: auto;
	flex-flow: wrap;
	line-height: 1.4em;
	min-height: 40px;
	gap:4px;
   justify-content: flex-start;
}
.fake-input:has(input[data-multiple="false"]){
   white-space: nowrap;
   overflow: hidden;
   max-width:calc(100vw - 40px);
}
.fake-input > .clicktoremove ~ input[data-multiple="false"] {
   display:none
}
.fake-input input{
	margin:0;
	border: 0;
	background: none !important;
	padding:0 !important;
	margin:0 !important;
	height: 22px;
	overflow: visible;
	box-sizing:border-box;
	width: auto;
	min-width: 120px;
   border:none !important;
}
.fake-input input:first-child{
   text-indent:0
}
.fake-input > a,
.fake-input > span{
	text-decoration: none;
	display: inline-block;
	font-weight: 700;
	cursor:pointer;
   overflow:hidden;
	text-overflow:ellipsis
}
.fake-input .hover-placeholder{
	display: inline-block;
	font-weight: 700;
	background: #f2f2f2;
	padding: 3px 6px;
	border: 1px #dcdcdc solid;
	border-radius: 3px;
	opacity:.5
}
.fake-input .sort-target{
	text-decoration:none !important;
	box-shadow:0 0 0 3px rgba(0, 0, 0, 0.432);
	cursor:pointer !important
}
.fake-input > a:hover,
.fake-input > span:hover{
	text-decoration: line-through;
}
[data-get] > *,
[data-post] > * {
    pointer-events: none;
}
.navigation li{
   position:relative
}
.navigation a .material-symbols-outlined{
   font-size: 22px;
   vertical-align: top;
   padding-right:5px;
}
.navigation{
   display:none;
   position:absolute;
   right:0;
   top:var(--header-height);
   background:#fff;
   margin:0;
   padding:0;
   z-index:1000;
   max-height:calc(100vh - var(--header-height));
   overflow-y: auto;
   box-sizing: border-box;
}
.navigation::-webkit-scrollbar {
   display:none
}
.navopen .navigation{
   display:block;
   box-shadow:0 0 30px rgba(0,0,0,.1)
}
.navigation{
   left:0;
   padding:20px;
   border-bottom-left-radius:20px;
}
.navigation li{
   display:block;
}
.navigation li a{
   display:block;
   padding:6px;
   text-decoration:none;
   font-size:18px;
   padding-left:0
}
.navigation > li > ul{
   padding-left:0px;
   margin-bottom:20px;
}
.navigation > li > ul ul{
   padding-left:31px;
}
.navigation > li > ul ul a{
   padding:0px
}
.navigation li b{
   color:#4A4A4A;
   font-size:13px;
}
.navigation-inline{
   display: grid;
   grid-auto-flow: column;
   gap: 16px;
   align-items: center;
   margin:0;
   padding:0;
   height:100%
}
.navigation-inline > li{
   display:flex;
   height:100%;
   align-items:center;
}
.navigation-inline li a,
.navigation-inline li > span{
   display:block;
   text-decoration:none;
   font-size:16px;
   font-weight:bold;
   white-space: nowrap;
   color:var(--navigation-color-a);
}
.navigation-inline li ul a{
   color:var(--navigation-color-dropmenu-a)
}
.navigation-sub-inline-sticky{
   position:sticky;
   top:var(--header-height);
   background:#fff;
   z-index: 10000;
}
.navigation-sub-inline{
   gap:0px;
   justify-content:start;
   padding-bottom:0
}
.navigation-sub-inline li{
   text-align:center
}
.navigation-sub-inline li a{
   padding:6px 12px;
   border-radius:6px;
   display:grid;
   gap:4px;
   justify-content: center;
   align-items:center
}
.navigation-inline li a.active{
   background:var(--button-color);
   color:#fff
}
.navigation-inline li a.active small{
   color:#fff
}
.navigation-inline li > span{
   cursor:default
}
.navigation-inline ul{
   display:none;
   position:absolute;
   margin:0;
   padding:0;
   top:var(--header-height);
   background:#fff;
   padding:30px;
   border-radius:6px;
   box-shadow: 0 5px 30px #00000014;
   gap:16px;
   column-gap:40px;
   max-height: 380px; 
   overflow: hidden;
   column-count: auto;
   column-width: 200px; 
   column-gap: 40px;
   max-height: 30vh;
   overflow: hidden;
   flex-flow: column wrap;
   min-width:120px
}
.navigation-inline small{
   display:block;
   font-size:14px;
   color:#4A4A4A
}
.navigation-inline li{
   display:grid;
   grid-auto-flow: row;
}
.navigation-trigger{
   display:flex;
   align-items: center;
}
.navigation-floater{
   display:flex;
   justify-content:space-between;
   width:100%;
}
.navigation-aside{
   margin:0; padding:0;
   display:grid;
   gap:4px;
}
.navigation-aside li{
   display:block;
   margin:0;
   padding:0;
}
.navigation-aside ul{
   margin:0;
   padding:0;
   display:none
}
.navigation-aside li a,
.navigation-aside li > span{
   padding:6px;
   border-radius:6px;
   color:#555;
   font-weight:400;
   display:block;
   text-decoration: none;
   font-size:16px;
   display:flex;
   align-items:center;
   gap:10px;
}
.navigation-aside li a.active{
   color:var(--aside-color-a-hover);
}
.navigation-aside a:hover{
   background:var(--aside-color-li-hover);
}
.navigation-aside li.active ul{
   display:block;
}
.navigation-aside ul{
   padding-left:29px;
}
.navigation-aside li .material-symbols-outlined{
   font-size: 20px !important;
}
.grid-column{
   display:grid;
   gap:var(--grid-gap);
   grid-template-columns: 1fr 1fr;
}
.grid-row{
   display:grid;
   gap:var(--grid-gap);
   grid-auto-flow:row;
}
.grid-desktop{
   display:grid;
   gap:var(--grid-gap);
   grid-auto-flow:column;
}
@media only screen and (min-width: 768px) {
   .navigation{
      max-width:265px;
      margin-left:auto
   }
   .navigation-trigger{
      display:none
   }
   .navigation-inline li:hover ul{
      display:flex;
   }
   .mobile-browser-only{
      display:none !important
   }
}
@media only screen and (max-width: 768px) {
   body:not(.user) .navigation-floater{
      display:none
   }
   .navigation-open .navigation-floater{
      display: flex !important;
      position: fixed;
      left: 0;
      right: 0;
      top: var(--header-height);
      background: #fff;
      height: calc( 100vh - var(--header-height) );
      padding: 20px;
      overflow: auto;
      z-index: 100000000000000;
      box-sizing: border-box;
      flex-direction:column;
      justify-content: flex-start;
   }
   .navigation-aside-open aside{
      display: flex !important;
      position: fixed;
      left: 0;
      right: 0;
      top: var(--header-height);
      background: #fff;
      height: calc( 100vh - var(--header-height) );
      padding: 10px;
      overflow: auto;
      z-index: 100000000000000;
      box-sizing: border-box;
      flex-direction:column;
      justify-content: flex-start;
      --aside-color-a: #000 !important
   }
   body:not(.user) .navigation-inline{
      grid-auto-flow: row;
      height:auto
   }
   .navigation-sub-inline{
      grid-auto-flow: column;
   }
   .navigation-inline li{
      height:auto
   }
   .navigation-inline ul{
      display:grid;
      position:relative;
      padding:0;
      top:auto;
      background:none;
      box-shadow:none;
      grid-auto-flow: row !important;
   }
   .navigation-inline li > span{
      font-size:14px;
      margin-bottom:10px;
      color:#4A4A4A
   }
}
@media (display-mode: standalone) {
   .mobile-browser-only{
      display:none !important
   }
   .navigation-aside li a{
      display:flex;
      flex-flow:column;
      align-items: center;
      font-size:9px;
      text-align:center;
      padding:8px;
      color:#fff;
      gap:0;
   }
   .navigation-aside{
      grid-auto-flow: column;
      justify-content: space-around;
      gap: 6px;
   }
   .navigation-aside li .material-symbols-outlined{
      font-size:36px !important;
      display:block;
      margin:0 auto;
      padding:0;
      padding-bottom:5px;
   }
   .navigation-aside{
      padding-bottom:30px
   }
}
.ios-wrapper .mobile-browser-only{
   display:none !important
}
.ios-wrapper .navigation-aside li a{
   display:flex;
   flex-flow:column;
   align-items: center;
   font-size:9px;
   text-align:center;
   padding:8px;
   color:#fff;
   gap:0;
}
.ios-wrapper .navigation-aside{
   grid-auto-flow: column;
   justify-content: space-around;
   gap: 6px;
}
.ios-wrapper .navigation-aside li .material-symbols-outlined{
   font-size:36px !important;
   display:block;
   margin:0 auto;
   padding:0;
   padding-bottom:5px;
}
.ios-wrapper .navigation-aside{
   padding-bottom:20px
}
table{
   width: 100%;
   border-collapse: separate; 
   border: 0;
   border-spacing: 0;
   border-radius: 20px;
   background: #fff;
   text-align:left;
   font-size:16px;
}
table td,
table th{
   color: #3a3a3a;
   background-clip: padding-box;
   scroll-snap-align: start;
   padding:8px 10px;
   overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
table tr td:first-child,
table tr th:first-child{
   padding-left:0
}
table thead th{
   font-weight:bold;
   white-space:nowrap;
   position:sticky;
   top:var(--header-height);
   background:#fff;
   z-index:10;
}
table tbody td,
table thead th,
table tbody tr:last-child td{
   border-bottom:1px #eee solid;
}
table tfoot td{
   padding:16px 0;
}
tr.loading td{
   position:relative
}
tr.loading td:not([class]):after{
   background:#ddd;
   color:#ddd;
   content:"loading_text_here";
}
tr.loading td:not([class]):before{
   display: block;
   content: "";
   position: absolute;
   width: 100px;
   height: 100%;
   z-index: 10;
   animation: 1s ease-in-out infinite bgslide;
   background: linear-gradient(90deg,rgba(0,0,0,0),#ffffff34 50%,rgba(0,0,0,0))
}
@keyframes bgslide {
   0% {
       left: -100px
   }
   100% {
       left: 100px
   }
}
.table-overflow{
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	max-height:calc(100dvh - var(--table-scroll-gap, 300px));
	scroll-snap-type:x mandatory;
}
.table-overflow thead th{
	top:0;
}
@media only screen and (max-width: 768px) {
   table tbody td{
		font-size:16px;
      padding-right:10px
	}
   .table-overflow {
      overflow: hidden;
      overflow-x: scroll;
      max-width: fit-content;
      overflow: auto;
      scroll-snap-type: both mandatory;
      min-width: 100%;
  }
  .table-overflow td{
   scroll-snap-align: start;
  }
   table thead th{
      top:0
   }
   .table-overflow {
      scrollbar-width: none;
   }
}
.action-menu{
   position:sticky;
   right:-1px;
   background:transparent;
   padding:0 10px;
   white-space:nowrap;
   text-align:center;
   overflow:visible !important;
   scroll-snap-align:none;
   cursor:pointer;
   width:20px;
}
.action-menu > .material-symbols-outlined{
   opacity:0;
   transition:opacity 0.15s;
}
table tr:hover > .action-menu{
   background:#fff;
}
table tr:hover > .action-menu > .material-symbols-outlined{
   opacity:1;
}
@media(hover:none){
   .action-menu{
      background:#fff;
   }
   .action-menu > .material-symbols-outlined{
      opacity:1;
   }
}
.action-menu ul{
   display:flex;
   gap:2px;
   list-style:none;
   margin:0;
   padding:4px;
   align-items:center;
   position:absolute;
   right:6px;
   top:50%;
   transform:translateY(-50%);
   background:#fff;
   border:1px solid #eee;
   border-radius:8px;
   box-shadow:0 2px 8px rgba(0,0,0,0.08);
   opacity:0;
   visibility:hidden;
   transition:opacity 0.12s, visibility 0.12s;
   z-index:10000;
}
.action-menu ul:empty{
   display:none !important
}
.action-menu:hover ul{
   opacity:1;
   visibility:visible;
}
.action-menu:hover > .material-symbols-outlined{
   opacity:0;
}
.action-menu li a,
.action-menu li > span{
   display:flex !important;
   align-items:center;
   justify-content:center;
   width:30px;
   height:30px;
   border-radius:6px;
   text-decoration:none;
   color:#555;
   font-size:0;
   transition:background 0.12s, color 0.12s;
   position:relative;
}
.action-menu li a .material-symbols-outlined,
.action-menu li > span .material-symbols-outlined{
   font-size:18px !important;
}
@media(hover:hover){
   .action-menu li a:hover{
      background:#f0f0f0;
      color:#111;
   }
   .action-menu li a[style*="color:#d9534f"]:hover,
   .action-menu li a[style*="color: #d9534f"]:hover{
      background:rgba(217,83,79,0.08);
   }
   .action-menu li *[title]:hover:after{
      content:attr(title);
      position:absolute;
      bottom:calc(100% + 6px);
      background:#333;
      color:#fff;
      font-size:11px;
      font-weight:500;
      padding:4px 8px;
      border-radius:4px;
      white-space:nowrap;
      pointer-events:none;
      z-index:10000;
   }
}
.action-menu:after{
   position:absolute;
   left:0px;
   height:100%;
   background:#eee;
   top:0;
   content:" ";
   width:2px;
   display:none;
}
table tr:hover > .action-menu:after{
   display:block;
}
table tr:hover{
   z-index:1000
}
table tr td:hover{
   z-index:10000
}
table td span{
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 2;
   overflow: hidden;
}
table td > a{
   text-decoration:underline
}
.action-menu span{
   display:inline !important;
   -webkit-line-clamp:unset !important;
   -webkit-box-orient:unset !important;
   overflow:visible !important;
}
.pagination{
   display:flex;
   justify-content:space-between;
   align-items:center;
   padding:16px 0;
   font-size:13px;
}
.pagination-info{
   opacity:0.5;
}
.pagination-links{
   display:flex;
   gap:12px;
}
.pagination-links a{
   font-weight:700;
}
h1{
   font-size:26px
}
article ul li{
   font-weight:inherit
}
:root{
	--header-height:60px;
	--button-color:#1a5bc1;
	--a-color:#1a5bc1;
	--aside-color-a-hover:#1a5bc1;
	--button-hover-color:#1550a8;
	--app-theme-color:#1a5bc1;
}
.dash-cards{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:16px;
	margin-bottom:24px;
}
.dash-card{
	background:#fff;
	border-radius:12px;
	padding:22px 20px;
	display:flex;
	align-items:center;
	gap:16px;
	border:1px solid #f0f0f0;
	border-top:3px solid #e0e0e0;
	transition:transform 0.15s, box-shadow 0.15s;
	text-decoration:none;
	color:inherit;
}
.dash-card:hover{
	transform:translateY(-2px);
	box-shadow:0 4px 12px rgba(0,0,0,0.06);
}
.dash-card:nth-child(1){ border-top-color:var(--app-theme-color); background:linear-gradient(to bottom, rgba(26,91,193,0.03), #fff); }
.dash-card:nth-child(2){ border-top-color:#d9534f; background:linear-gradient(to bottom, rgba(217,83,79,0.03), #fff); }
.dash-card:nth-child(3){ border-top-color:#27ae60; background:linear-gradient(to bottom, rgba(39,174,96,0.03), #fff); }
.dash-card:nth-child(4){ border-top-color:#333; background:linear-gradient(to bottom, rgba(0,0,0,0.02), #fff); }
.dash-card-icon{
	width:48px;
	height:48px;
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
}
.dash-card-icon .material-symbols-outlined{
	font-size:24px;
}
.dash-card-body{
	display:flex;
	flex-direction:column;
}
.dash-card-value{
	font-size:28px;
	font-weight:900;
	line-height:1.1;
	letter-spacing:-0.5px;
}
.dash-card-label{
	font-size:13px;
	font-weight:500;
	color:#888;
	margin-top:2px;
}
.dash-cards-small{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:16px;
	margin-bottom:24px;
}
.dash-card-small{
	background:#fff;
	border-radius:10px;
	padding:16px;
	border:1px solid #f0f0f0;
}
.dash-card-small-value{
	font-size:22px;
	font-weight:800;
	letter-spacing:-0.3px;
}
.dash-card-small-label{
	font-size:12px;
	color:#888;
	margin-top:2px;
}
.dash-section{
	margin-bottom:24px;
}
.dash-section-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:12px;
}
.dash-section-head h2{
	font-size:16px;
	font-weight:700;
	margin:0;
}
.dash-section-head a{
	font-size:13px;
	color:var(--app-theme-color);
	text-decoration:none;
	font-weight:600;
}
.dash-columns{
	display:grid;
	grid-template-columns:2fr 1fr;
	gap:24px;
}
.chip-filters{
	margin-bottom:16px;
}
.chip-bar{
	display:flex;
	align-items:center;
	gap:10px;
	flex-wrap:wrap;
}
.chip-bar-left{
	display:flex;
	align-items:center;
	gap:6px;
	flex:1;
	min-width:0;
	flex-wrap:wrap;
}
.chip-bar-right{
	display:flex;
	align-items:center;
	gap:10px;
	flex-shrink:0;
	margin-left:auto;
}
.chip-filter{
	position:relative;
}
.chip-btn{
	display:inline-flex;
	align-items:center;
	gap:2px;
	height:34px;
	padding:0 10px 0 12px;
	border:1px solid #ddd;
	border-radius:18px;
	background:#fff;
	font-size:13px;
	font-weight:600;
	color:#555;
	cursor:pointer;
	white-space:nowrap;
	transition:all 0.15s;
}
.chip-btn:hover{
	border-color:#bbb;
	background:#fafafa;
}
.chip-btn.active{
	background:var(--app-theme-color);
	color:#fff;
	border-color:var(--app-theme-color);
}
.chip-btn.active:hover{
	opacity:0.9;
}
.chip-arrow{
	font-size:16px !important;
	transition:transform 0.15s;
}
.chip-filter.open .chip-arrow{
	transform:rotate(180deg);
}
.chip-dropdown{
	display:none;
	position:absolute;
	top:calc(100% + 6px);
	left:0;
	min-width:180px;
	max-height:260px;
	overflow-y:auto;
	background:#fff;
	border:1px solid #e0e0e0;
	border-radius:10px;
	box-shadow:0 8px 24px rgba(0,0,0,0.1);
	z-index:100;
}
.chip-filter.open .chip-dropdown{
	display:block;
}
.chip-dropdown a{
	display:block;
	padding:8px 14px;
	font-size:13px;
	color:#333;
	text-decoration:none;
	transition:background 0.1s;
}
.chip-dropdown a:hover{
	background:#f5f5f5;
}
.chip-dropdown a.selected{
	color:var(--app-theme-color);
	font-weight:700;
	background:rgba(26,91,193,0.06);
}
.chip-search{
	display:flex;
	align-items:center;
	gap:0;
	background:#fff;
	border:1px solid #ddd;
	border-radius:18px;
	padding:0;
	height:34px;
	width:34px;
	justify-content:center;
	cursor:pointer;
	transition:width 0.2s,padding 0.2s,gap 0.2s;
	overflow:hidden;
}
.chip-search.open{
	width:auto;
	min-width:180px;
	max-width:260px;
	padding:0 12px;
	gap:6px;
	cursor:default;
}
.chip-search .material-symbols-outlined{
	font-size:18px;
	color:#aaa;
	flex-shrink:0;
}
.chip-search form{
	width:0;
	overflow:hidden;
}
.chip-search.open form{
	width:auto;
	flex:1;
}
.chip-search input{
	border:none;
	outline:none;
	font-size:13px;
	background:transparent;
	width:100%;
	height:100%;
}
.chip-active{
	display:flex;
	align-items:center;
	gap:6px;
	margin-top:10px;
	flex-wrap:wrap;
}
.chip-tag{
	display:inline-flex;
	align-items:center;
	gap:4px;
	padding:4px 8px 4px 12px;
	background:rgba(26,91,193,0.08);
	color:var(--app-theme-color);
	border-radius:14px;
	font-size:12px;
	font-weight:700;
	text-decoration:none;
	transition:background 0.15s;
}
.chip-tag:hover{
	background:rgba(26,91,193,0.15);
}
.chip-tag .material-symbols-outlined{
	font-size:14px;
}
.chip-clear{
	font-size:12px;
	color:#d9534f;
	text-decoration:none;
	padding:4px 10px;
	border-radius:14px;
	font-weight:600;
	transition:background 0.15s;
}
.chip-clear:hover{
	background:rgba(217,83,79,0.08);
}
.status-badge{
	display:inline-block;
	padding:3px 10px;
	border-radius:20px;
	font-size:12px;
	font-weight:700;
	white-space:nowrap;
	background:#eee;
}
.status-active{ background:#e8f5e9; color:#228b22; }
.status-occupied{ background:#e8f5e9; color:#228b22; }
.status-paid{ background:#e8f5e9; color:#228b22; }
.status-signed{ background:#e8f5e9; color:#228b22; }
.status-closed{ background:#e8f5e9; color:#228b22; }
.status-pending{ background:#e8f4fd; color:#1a5bc1; }
.status-sent{ background:#e8f4fd; color:#1a5bc1; }
.status-viewed{ background:#e8f4fd; color:#1a5bc1; }
.status-in_progress{ background:#e8f4fd; color:#1a5bc1; }
.status-scheduled{ background:#e8f4fd; color:#1a5bc1; }
.status-draft{ background:#f0f0f0; color:#6c757d; }
.status-vacant{ background:#f0f0f0; color:#6c757d; }
.status-expired{ background:#f0f0f0; color:#6c757d; }
.status-voided{ background:#f0f0f0; color:#6c757d; }
.status-void{ background:#f0f0f0; color:#6c757d; }
.status-overdue{ background:#fde8e8; color:#d9534f; }
.status-emergency{ background:#fde8e8; color:#d9534f; }
.status-terminated{ background:#fde8e8; color:#d9534f; }
.status-partial{ background:#fff3e0; color:#e67e22; }
.status-pending_signature{ background:#fff3e0; color:#e67e22; }
.status-waiting_vendor{ background:#fff3e0; color:#e67e22; }
.status-waiting_tenant{ background:#fff3e0; color:#e67e22; }
.status-maintenance{ background:#fff3e0; color:#e67e22; }
.status-month_to_month{ background:rgba(26,91,193,0.1); color:var(--app-theme-color); }
.status-waived{ background:rgba(26,91,193,0.1); color:var(--app-theme-color); }
.priority-emergency{ color:#d9534f; font-weight:700; }
.priority-high{ color:#e67e22; font-weight:600; }
.priority-medium{ color:#1a5bc1; }
.priority-low{ color:#6c757d; }
main.main-min{
	background:#f7f7f8;
}
main.main-min .main-head{
	background:#fff;
	border-bottom:1px solid #eee;
	padding:0 20px;
}
main.main-min .main-head h1{
	font-size:18px;
	font-weight:600;
	color:#1a1a1a;
}
main.main-min .main-head .exit{
	width:36px;
	height:36px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:8px;
	color:#666;
	transition:background 0.15s, color 0.15s;
	text-decoration:none;
}
main.main-min .main-head .exit:hover{
	background:#f0f0f0;
	color:#1a1a1a;
}
main.main-min .main-head button[type="submit"]{
	height:36px;
	padding:0 20px;
	border-radius:8px;
	font-size:14px;
	font-weight:600;
	letter-spacing:0.3px;
}
main.main-min .inner{
	max-width:720px;
	padding:32px 24px 64px;
}
.form-section{
	margin-bottom:28px;
}
.form-section:last-of-type{
	margin-bottom:0;
}
.form-section-head{
	display:flex;
	align-items:center;
	gap:8px;
	margin-bottom:12px;
}
.form-section-head .material-symbols-outlined{
	font-size:20px !important;
	color:var(--app-theme-color);
	opacity:0.8;
}
.form-section-head h3{
	margin:0;
	padding:0;
	font-size:15px;
	font-weight:700;
	color:#1a1a1a;
}
.form-row{
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
	gap:12px;
	margin-bottom:12px;
}
.form-row-3{
	grid-template-columns:repeat(3, 1fr);
}
.form-row-4{
	grid-template-columns:repeat(4, 1fr);
}
.form-row label{
	font-size:13px;
	font-weight:600;
	color:#555;
	display:block;
	margin-bottom:4px;
}
.form-row input,
.form-row select,
.form-row textarea{
	width:100%;
	height:38px;
	padding:0 12px;
	border:1px solid #ddd;
	border-radius:8px;
	font-size:14px;
	background:#fff;
	transition:border-color 0.15s;
}
.form-row textarea{
	height:80px;
	padding:10px 12px;
	resize:vertical;
}
.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus{
	border-color:var(--app-theme-color);
	outline:none;
}
.dynamic-rows{
	margin-bottom:16px;
}
.dynamic-row{
	display:grid;
	gap:10px;
	align-items:end;
	padding:10px 0;
	border-bottom:1px solid #f0f0f0;
}
.dynamic-row:last-child{
	border-bottom:none;
}
.dynamic-row .remove-btn{
	width:32px;
	height:32px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:6px;
	border:none;
	background:none;
	color:#ccc;
	cursor:pointer;
	transition:color 0.15s, background 0.15s;
}
.dynamic-row .remove-btn:hover{
	color:#d9534f;
	background:rgba(217,83,79,0.08);
}
.add-row-btn{
	display:inline-flex;
	align-items:center;
	gap:4px;
	padding:6px 12px;
	font-size:13px;
	font-weight:600;
	color:var(--app-theme-color);
	border:1px dashed var(--app-theme-color);
	border-radius:8px;
	background:none;
	cursor:pointer;
	transition:background 0.15s;
	margin-top:8px;
}
.add-row-btn:hover{
	background:rgba(26,91,193,0.04);
}
.line-items{ width:100%; }
.line-items th{ font-size:12px; font-weight:600; color:#888; text-align:left; padding:6px 8px; }
.line-items td{ padding:4px 8px; }
.line-items input, .line-items select{ height:34px; font-size:13px; }
.line-items .line-total{ font-weight:700; text-align:right; padding-right:12px; }
.line-items tfoot td{ border-top:2px solid #ddd; padding-top:8px; font-weight:700; }
.prop-list{
	display:grid;
	gap:12px;
}
.prop-item{
	background:#fff;
	border:1px solid #f0f0f0;
	border-radius:12px;
	padding:18px 20px;
	display:flex;
	align-items:center;
	gap:16px;
	text-decoration:none;
	color:inherit;
	transition:box-shadow 0.15s, transform 0.15s;
	cursor:pointer;
}
.prop-item:hover{
	box-shadow:0 2px 10px rgba(0,0,0,0.04);
	transform:translateY(-1px);
}
.prop-item-thumb{
	width:64px;
	height:64px;
	border-radius:8px;
	background:#f0f0f0;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	overflow:hidden;
}
.prop-item-thumb img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.prop-item-thumb .material-symbols-outlined{
	font-size:28px;
	color:#ccc;
}
.prop-item-body{
	flex:1;
	min-width:0;
}
.prop-item-address{
	font-size:15px;
	font-weight:700;
	color:#1a1a1a;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.prop-item-meta{
	font-size:13px;
	color:#888;
	margin-top:2px;
	display:flex;
	gap:12px;
	flex-wrap:wrap;
}
.prop-item-meta span{
	display:inline-flex;
	align-items:center;
	gap:3px;
}
.prop-item-meta .material-symbols-outlined{
	font-size:15px;
}
.prop-item-right{
	text-align:right;
	flex-shrink:0;
}
.prop-item-rent{
	font-size:17px;
	font-weight:800;
	color:#1a1a1a;
}
.prop-item-rent-label{
	font-size:12px;
	color:#888;
}
.detail-header{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	padding:24px 0;
	gap:16px;
}
.detail-header-left{
	flex:1;
}
.detail-header h1{
	font-size:22px;
	font-weight:800;
	margin:0 0 4px;
	color:#1a1a1a;
}
.detail-header-meta{
	font-size:14px;
	color:#888;
	display:flex;
	gap:12px;
	align-items:center;
	flex-wrap:wrap;
}
.detail-header-actions{
	display:flex;
	gap:8px;
}
.detail-header-actions a,
.detail-header-actions button{
	height:36px;
	padding:0 16px;
	border-radius:8px;
	font-size:13px;
	font-weight:600;
	display:inline-flex;
	align-items:center;
	gap:4px;
	text-decoration:none;
	border:1px solid #ddd;
	background:#fff;
	color:#333;
	cursor:pointer;
	transition:all 0.15s;
}
.detail-header-actions a:hover,
.detail-header-actions button:hover{
	background:#fafafa;
	border-color:#bbb;
}
.detail-header-actions .btn-primary{
	background:var(--app-theme-color);
	color:#fff;
	border-color:var(--app-theme-color);
}
.detail-header-actions .btn-primary:hover{
	opacity:0.9;
}
.detail-header-actions .btn-danger{
	color:#d9534f;
	border-color:#d9534f;
}
.detail-tabs{
	display:flex;
	gap:0;
	border-bottom:1px solid #eee;
	margin-bottom:20px;
}
.detail-tabs a{
	padding:10px 18px;
	font-size:14px;
	font-weight:600;
	color:#888;
	text-decoration:none;
	border-bottom:2px solid transparent;
	transition:all 0.15s;
}
.detail-tabs a:hover{
	color:#333;
}
.detail-tabs a.active{
	color:var(--app-theme-color);
	border-bottom-color:var(--app-theme-color);
}
.detail-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
	margin-bottom:24px;
}
.detail-card{
	background:#fff;
	border:1px solid #f0f0f0;
	border-radius:12px;
	padding:20px;
}
.detail-card h3{
	font-size:14px;
	font-weight:700;
	margin:0 0 12px;
	color:#1a1a1a;
	display:flex;
	align-items:center;
	gap:6px;
}
.detail-card h3 .material-symbols-outlined{
	font-size:18px;
	color:var(--app-theme-color);
}
.detail-field{
	display:flex;
	justify-content:space-between;
	padding:6px 0;
	border-bottom:1px solid #f5f5f5;
	font-size:13px;
}
.detail-field:last-child{ border-bottom:none; }
.detail-field-label{ color:#888; }
.detail-field-value{ font-weight:600; color:#1a1a1a; }
.detail-card-full{
	grid-column:1/-1;
}
.sub-nav{
	display:flex;
	gap:0;
	border-bottom:1px solid #eee;
	margin-bottom:20px;
}
.sub-nav a{
	padding:10px 18px;
	font-size:14px;
	font-weight:600;
	color:#888;
	text-decoration:none;
	border-bottom:2px solid transparent;
	transition:all 0.15s;
}
.sub-nav a:hover{ color:#333; }
.sub-nav a.active{
	color:var(--app-theme-color);
	border-bottom-color:var(--app-theme-color);
}
.comments-section{
	margin-top:20px;
}
.comment-item{
	display:flex;
	gap:12px;
	padding:12px 0;
	border-bottom:1px solid #f5f5f5;
}
.comment-avatar{
	width:36px;
	height:36px;
	border-radius:50%;
	background:var(--app-theme-color);
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:14px;
	font-weight:700;
	flex-shrink:0;
}
.comment-body{
	flex:1;
}
.comment-meta{
	font-size:12px;
	color:#888;
	margin-bottom:4px;
}
.comment-meta strong{
	color:#333;
}
.comment-text{
	font-size:14px;
	color:#333;
	line-height:1.5;
}
.comment-form{
	display:flex;
	gap:10px;
	margin-top:12px;
}
.comment-form textarea{
	flex:1;
	height:60px;
	padding:10px;
	border:1px solid #ddd;
	border-radius:8px;
	font-size:14px;
	resize:none;
}
.comment-form button{
	height:40px;
	align-self:flex-end;
}
.file-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));
	gap:12px;
	margin-top:12px;
}
.file-item{
	background:#fff;
	border:1px solid #f0f0f0;
	border-radius:8px;
	padding:12px;
	text-align:center;
	position:relative;
	transition:box-shadow 0.15s;
}
.file-item:hover{
	box-shadow:0 2px 8px rgba(0,0,0,0.06);
}
.file-item-thumb{
	width:100%;
	height:80px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#f8f8f8;
	border-radius:6px;
	margin-bottom:8px;
	overflow:hidden;
}
.file-item-thumb img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.file-item-name{
	font-size:12px;
	color:#333;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.file-item-delete{
	position:absolute;
	top:4px;
	right:4px;
	width:20px;
	height:20px;
	border-radius:50%;
	background:rgba(0,0,0,0.5);
	color:#fff;
	border:none;
	cursor:pointer;
	font-size:12px;
	display:none;
	align-items:center;
	justify-content:center;
}
.file-item:hover .file-item-delete{
	display:flex;
}
.check-preview{
	max-width:700px;
	background:#fff;
	border:2px solid #333;
	border-radius:4px;
	padding:40px;
	font-family:'Courier New', monospace;
	margin:20px auto;
}
.check-preview-header{
	display:flex;
	justify-content:space-between;
	margin-bottom:24px;
}
.check-preview-payee{
	font-size:16px;
	font-weight:700;
	margin-bottom:8px;
}
.check-preview-amount{
	font-size:18px;
	font-weight:900;
	border:1px solid #333;
	padding:4px 12px;
	display:inline-block;
}
.check-preview-memo{
	margin-top:16px;
	font-size:12px;
	color:#666;
	border-top:1px solid #ddd;
	padding-top:8px;
}
.check-preview-micr{
	font-family:'MICR', 'Courier New', monospace;
	font-size:14px;
	letter-spacing:3px;
	margin-top:24px;
	text-align:center;
}
@media print{
	body *{ visibility:hidden; }
	.check-preview, .check-preview *{
		visibility:visible;
	}
	.check-preview{
		position:absolute;
		top:0;
		left:0;
		border:none;
	}
}
.contract-view{
	max-width:800px;
	background:#fff;
	border:1px solid #eee;
	border-radius:12px;
	padding:40px;
	margin:20px auto;
	box-shadow:0 2px 12px rgba(0,0,0,0.04);
}
.contract-view h1{
	font-size:20px;
	font-weight:700;
	margin-bottom:20px;
}
.contract-body{
	font-size:14px;
	line-height:1.8;
	color:#333;
}
.signature-area{
	margin-top:32px;
	border-top:2px solid #eee;
	padding-top:24px;
}
.signature-canvas{
	width:100%;
	height:150px;
	border:1px solid #ddd;
	border-radius:8px;
	cursor:crosshair;
	background:#fafafa;
}
.signature-actions{
	display:flex;
	gap:8px;
	margin-top:12px;
}
.tenant-portal .balance-card{
	background:linear-gradient(135deg, var(--app-theme-color), #1550a8);
	color:#fff;
	border-radius:16px;
	padding:28px 24px;
	margin-bottom:24px;
}
.tenant-portal .balance-amount{
	font-size:36px;
	font-weight:900;
	letter-spacing:-1px;
}
.tenant-portal .balance-label{
	font-size:14px;
	opacity:0.8;
	margin-top:4px;
}
.tenant-portal .pay-btn{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:10px 24px;
	background:rgba(255,255,255,0.2);
	color:#fff;
	border:1px solid rgba(255,255,255,0.3);
	border-radius:8px;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
	margin-top:16px;
	cursor:pointer;
	transition:background 0.15s;
}
.tenant-portal .pay-btn:hover{
	background:rgba(255,255,255,0.3);
}
.report-card{
	background:#fff;
	border:1px solid #f0f0f0;
	border-radius:12px;
	padding:20px;
	margin-bottom:20px;
}
.report-card h3{
	font-size:15px;
	font-weight:700;
	margin:0 0 16px;
}
.report-summary{
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
	gap:16px;
	margin-bottom:16px;
}
.report-summary-item{
	text-align:center;
	padding:12px;
	background:#f8f9fa;
	border-radius:8px;
}
.report-summary-value{
	font-size:22px;
	font-weight:800;
}
.report-summary-label{
	font-size:12px;
	color:#888;
	margin-top:2px;
}
.report-positive{ color:#228b22; }
.report-negative{ color:#d9534f; }
.aging-buckets{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:12px;
	margin-bottom:20px;
}
.aging-bucket{
	text-align:center;
	padding:16px;
	background:#f8f9fa;
	border-radius:8px;
	border-top:3px solid #eee;
}
.aging-bucket-value{
	font-size:20px;
	font-weight:800;
}
.aging-bucket-label{
	font-size:11px;
	color:#888;
	margin-top:4px;
}
.org-select{
	max-width:480px;
	margin:60px auto;
	text-align:center;
}
.org-select h1{
	font-size:22px;
	font-weight:800;
	margin-bottom:8px;
}
.org-select p{
	color:#888;
	margin-bottom:24px;
}
.org-list{
	display:grid;
	gap:10px;
	text-align:left;
}
.org-list a{
	display:flex;
	align-items:center;
	gap:12px;
	padding:16px 20px;
	background:#fff;
	border:1px solid #eee;
	border-radius:10px;
	text-decoration:none;
	color:#333;
	transition:all 0.15s;
}
.org-list a:hover{
	border-color:var(--app-theme-color);
	box-shadow:0 2px 8px rgba(26,91,193,0.08);
}
.org-list .org-icon{
	width:44px;
	height:44px;
	border-radius:10px;
	background:var(--app-theme-color);
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:18px;
	font-weight:800;
	flex-shrink:0;
}
.org-list .org-name{
	font-weight:700;
	font-size:15px;
}
.org-list .org-role{
	font-size:12px;
	color:#888;
}
.org-setup{
	max-width:520px;
	margin:60px auto;
}
.org-setup h1{
	font-size:22px;
	font-weight:800;
	margin-bottom:24px;
	text-align:center;
}
.empty-state{
	text-align:center;
	padding:60px 20px;
	color:#888;
}
.empty-state .material-symbols-outlined{
	font-size:48px;
	color:#ddd;
	margin-bottom:12px;
}
.empty-state h3{
	font-size:16px;
	font-weight:700;
	color:#333;
	margin:0 0 4px;
}
.empty-state p{
	font-size:14px;
	margin:0 0 16px;
}
.empty-state a{
	display:inline-flex;
	align-items:center;
	gap:4px;
	padding:8px 20px;
	background:var(--app-theme-color);
	color:#fff;
	border-radius:8px;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
}
.pagination{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:4px;
	margin:24px 0;
}
.pagination a,
.pagination span{
	height:34px;
	min-width:34px;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:0 10px;
	border-radius:8px;
	font-size:13px;
	font-weight:600;
	text-decoration:none;
	color:#555;
	transition:all 0.15s;
}
.pagination a:hover{
	background:#f0f0f0;
}
.pagination .current{
	background:var(--app-theme-color);
	color:#fff;
}
@media(max-width:900px){
	.dash-cards{ grid-template-columns:repeat(2,1fr); }
	.dash-cards-small{ grid-template-columns:repeat(2,1fr); }
	.dash-columns{ grid-template-columns:1fr; }
	.detail-grid{ grid-template-columns:1fr; }
	.form-row-3, .form-row-4{ grid-template-columns:repeat(2,1fr); }
	.aging-buckets{ grid-template-columns:repeat(3, 1fr); }
}
@media(max-width:700px){
	.detail-header{ flex-direction:column; }
	.detail-header-actions{ width:100%; }
	.detail-header-actions a,
	.detail-header-actions button{ flex:1; justify-content:center; }
}
@media(max-width:500px){
	.dash-cards{ grid-template-columns:1fr; }
	.dash-cards-small{ grid-template-columns:1fr; }
	.form-row, .form-row-3, .form-row-4{ grid-template-columns:1fr; }
	.aging-buckets{ grid-template-columns:repeat(2, 1fr); }
	main.main-min .inner{ padding:20px 16px 48px; }
}
#mbody a.button,
#mbody button.button,
#mbody .button,
#mbody button[type="submit"],
#mbody button[type="button"],
.main-min a.button,
.main-min button.button,
.main-min .button,
.main-min button[type="submit"],
.main-min button[type="button"]{
	width:auto;
	display:inline-flex;
}
.add-row-btn,
.remove-btn{
	width:auto !important;
	display:inline-flex !important;
	background:none !important;
	color:#888;
	border:1px dashed #ddd !important;
	border-radius:8px;
	padding:6px 14px;
	font-size:13px;
	font-weight:500;
	cursor:pointer;
	align-items:center;
	gap:4px;
}
.add-row-btn:hover{ border-color:#4a90d9 !important; color:#4a90d9; }
.remove-btn{
	border:none !important;
	padding:4px;
	border-radius:50%;
	color:#999;
}
.remove-btn:hover{ color:#d9534f; background:#ffeaea !important; }
.line-items{ width:100%; border-collapse:collapse; table-layout:fixed; }
.line-items th{ font-size:11px; text-transform:uppercase; letter-spacing:0.5px; color:#888; font-weight:700; padding:6px 8px; text-align:left; border-bottom:1px solid #eee; }
.line-items td{ padding:4px 4px; vertical-align:middle; }
.line-items tr.dynamic-row{ display:table-row !important; }
.line-items td input[type=text],
.line-items td input[type=number],
.line-items td select{ display:block !important; width:100% !important; height:34px !important; font-size:13px !important; padding:0 8px !important; border:1px solid #e0e0e0 !important; border-radius:4px !important; box-sizing:border-box !important; }
.line-items .line-total{ font-weight:600; text-align:right; padding-right:8px; }
.line-items .remove-btn{ height:28px !important; width:28px !important; padding:2px !important; border:none !important; background:none !important; }
.line-items tfoot td{ border-top:2px solid #eee; padding-top:8px; }
.chip-btn{
	width:auto !important;
	display:inline-flex !important;
	padding:6px 16px;
	border-radius:20px;
	font-size:13px;
	font-weight:500;
	border:1px solid #e0e0e0;
	background:#fff;
	color:#555;
	cursor:pointer;
	transition:all 0.15s;
}
.chip-btn:hover{
	border-color:#4a90d9;
	color:#4a90d9;
}
.chip-btn.active{
	background:#4a90d9;
	border-color:#4a90d9;
	color:#fff;
}
.chip-filters{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	align-items:flex-start;
}
.chip-filter-group{
	display:flex;
	align-items:center;
	gap:6px;
	flex-wrap:wrap;
}



