zioinfo-mail/zioinfo/css/common.css
DESKTOP-TKLFCPR\ython e228faabf5 feat(itsm): G-1~G-12 확장 기능 + 하네스/봇/설치스크립트 구현
G-1: 메신저 Webhook Relay + _send_to_room 실제 httpx 호출 구현
G-2: POST /api/tasks/bulk SR 대량작업 엔드포인트 (최대 100건)
G-3: 라이선스 만료 알림 스케줄러 (매일 09:00 KST)
G-4: 체험판 upgrade_banner 필드 + license.py 배너 로직
G-5: core/auto_rca.py + incidents/problem auto-rca 엔드포인트
G-6: core/deploy_impact.py + vibe impact-analysis 엔드포인트
G-7: core/ticket_classifier.py + SR 생성 시 AI 분류 + ai-suggestion API
G-8: VulnPatchRecord 모델 + vuln_scan 패치추적 4개 엔드포인트
G-9: core/jira_sync.py + gateway Jira/Confluence 연동 엔드포인트
G-10: core/push_notify.py + routers/push.py + PushSubscription 모델
G-11: approvals 다중승인 (위임/서명/기한초과/마감연장)
G-12: alembic.ini + migrations/ + cicd/migrate_to_postgres.sh

하네스: guardia-orchestrator 확장기능 Phase 반영
봇명령어: /sr /status /license /bulk 슬래시 명령어 추가
설치스크립트: setup/ (Ubuntu, CentOS, RHEL, Windows) --test 옵션 포함

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-29 18:18:52 +09:00

296 lines
5.1 KiB
CSS

@CHARSET "EUC-KR";
/* CSS Document */
body, table {
font-family: Gulim, "굴림", sans-serif;*/
margin: 0;
padding: 0;
font-size: 9pt;
color: #666666;
}
img {
border: 0;
vertical-align: center;
margin: 0px;
padding: 0px;
}
img.hand {cursor:pointer;}
#hand {
cursor:pointer;
}
h1 {
font-size: 17px;
color: #666666;
font-weight : bold;
width: 100%;
margin: 0 0 5px 0;
padding-left: 25px;
text-align: left;
background: transparent url(../images/common/subtitle_bu02.gif) no-repeat 0 1px;
}
h2 {
font-size: 10pt;
font-weight:bold;
color: #666666;
width: 100%;
margin: 0px 0 0 0px;
text-align: left;
padding-left: 19px;
padding-top: 0px;
background: transparent url(../images/common//menu_bu01.gif) no-repeat 0 1px;
}
h3 {
font-size: 10pt;
font-weight:normal;
width: 100%;
margin: 0 0 2px;
text-align: left;
color: #666666;
padding-left: 20px;
background: transparent url(../images/common/menu_bu01.gif) no-repeat 0 1px;
}
h4 {
font-size: 10pt;
font-weight:normal;
width: 100%;
margin: 0 0 2px;
text-align: left;
color: #666666;
padding-left: 20px;
background: transparent url(../images/common/menu_bu02.gif) no-repeat 0 1px;
}
a {
color: #666666;
text-decoration: none;
cursor: pointer;
}
a:hover {
color: #86B553;
text-decoration: underline;
}
form {
margin: 0;
padding: 0;
}
input, select, textarea {
font-size: 9pt;
color: #666;
padding: 1px 2px 2px 2px;
margin: 0px;
border: 1px solid #EEEEEE;
background: white;
}
input, select {
height: 18px;
}
textarea {
width: 100%;
line-height: 1.5em;
}
input.radio {
border: 0;
}
input.checkbox {
border: 0;
}
/* 읽기 전용. */
input.readonly {
color: #444;
border: 1px solid #CDCDCD;
background-color: transparent;
}
table.outline { margin: 0; padding: 0; border: 0; background-color: transparent; }
table.outline td { margin: 0; padding: 0; border: 0; background-color: transparent; font-size: 10pt;}
/* 페이지 영역 정의 */
div.container {
padding-top: 5px;
/* padding-left: 15px;*/
width: 675px;
}
/* 페이지 영역의 하위 div */
div.container div {
width: 100%;
}
/* 페이징 TAG 영역 */
div.pageNaviZone {
text-align:center;
/* padding-top: px;*/
padding-bottom: 3px;
/*border-bottom: 1px solid #4BB32D;*/
}
/* 페이징정보표시영역 */
div.pageingInfoZone {
/* text-align:right;*/
margin-left: 10px;
margin-right: 10px;
padding-top: 5px;
padding-bottom: 3px;
font-size: 8pt;
color: #707070;
}
/* 페이지 버튼영역 */
div.buttonZone {
text-align:right;
padding-top: 10px;
padding-right:5px;
/* padding-bottom: 10px;*/
}
/* 검색영역 */
div.searchZone {
margin: 0 0 0 0px;
text-align:center;
background: #EFEFEF;
vertical-align:top;
}
/* 숨겨지는 영역 */
div.blockZone {
top: 10;
left: 10;
width: 10;
height:10;
position: absolute;
visibility: hidden;
overflow: hidden;
text-overflow: ellipsis;
background:red;
}
div#menuItems {
line-height: 150%;
cursor:pointer;
padding-top: 3px;
padding-bottom: 3px;
border-bottom: 1px dashed #EDEDED;
}
/*****************************************통계검색 /stat/searchStatTable.do */
div.searchcontainer {
width: 900px;
font-size: 9pt;
}
/* 통계검색영역 */
div.statSearchZone {
margin: 0 0 0 0px;
text-align:center;
background: #EFEFEF;
vertical-align:top;
}
/*[정렬]*/
div.statSearchInfoZone {
background: #F6F6F6;
padding: 0 0 0 30;
border-top: 1px solid #DCDCDC;
}
/*****************************************통계검색END*/
/* scrollbar */
.scrollbar {
scrollbar-arrow-color: #808080;
scrollbar-face-color: #E5E5E5;
scrollbar-highlight-color: #FFFFFF;
scrollbar-3dlight-color: #E5E5E5;
scrollbar-shadow-color: #E5E5E5;
scrollbar-darkshadow-color: #E5E5E5;
scrollbar-track-color: #FFFFFF;
}
/* 페이징 관련 스타일 */
.nav_linkPageNo {
color: black;
}
.nav_nextGroup {
color: black;
}
.nav_prevGroup {
color: black;
}
.nav_lastPage {
color: black;
}
.nav_firstPage {
color: black;
}
#blankspace {
margin-left: 10px;
}
/* 라인 */
.h_line01{ width:605px; border-top: 1px solid #E5E5E5; padding: 0px; margin: 0px; font-size:1px; }
.h_line02{ width:605px; border-top: 1px solid #4BB32D; padding: 0px; margin: 0px; font-size:1px; }
.dotline01{ background: url(/images/dot01.gif) repeat-x; height:1px; font-size:1px; padding: 0px; margin: 0px;} /* 리스트 점선이미지 */
/* 정렬 */
.align_l { text-align: left; padding-left: 10px;}
.align_2 { text-align: center;}
/* 영문,숫자 */
.e { font-family: verdana; font-size:11px; } /* 영문,숫자 */
.e a:link { font-size: 11px; color: #666666; text-decoration: none; }
.e a:visited { font-size: 11px; color: #666666; text-decoration: none; }
.e a:active { font-size: 11px; color: #4BB32D; text-decoration: underline; }
.e a:hover { font-size: 11px; color: #4BB32D; text-decoration: underline; }
/* 강조 */
#strong {
font-weight:bold;
}
/*검색페이지의 인기도 막대그래프*/
span.popular-bar {
width:8;height:4;font-size:6pt;margin-left: 2px;
}
span#popular01 {background:#A9D2EF;}
span#popular02 {background:#92C6EB;}
span#popular03 {background:#6AB0E2;}
span#popular04 {background:#3A96D8;}
span#popular05 {background:#1180CF;}
/*검색키워드 강조*/
span#searchKeyword {
background: #FEF7E9;
color: #F97C0D;
}
/*차트영역*/
div.chartZone {
padding-top:5px;
text-align:center;
}